我一直在搜索 StackOverflow,但我还没有找到适合我的答案。我对 Python 和 Django 比较陌生,所以我可能想错了。
举个简单的例子,假设有两个具有不同关联 URL 的 View 。这不应该是完美的代码。我只是想弄清楚如何从 View 1 到 View 2 中获取可变长度的项目列表。我没有看到通过 URL 执行此操作的方法,因为该列表可能很长。这不是很容易做到吗?
def view2(request, list_to_process):
use list_to_process to manufacture formset (e.g. make a formset with one entry for each item in the list)
return render(request, 'Project/template2.html', {'formset': formset})
def view1(request):
if request.method == "POST":
if form.is_valid():
result = form.cleaned_data
list_to_process = []
for item in result:
list_to_process.append(item)
*WHAT CODE DO I USE HERE TO CALL VIEW2 AND SEND IT list_to_process AS AN ARGUMENT OR REQUEST ADDITION?*
else:
formset = formsettype()
helper = AssayHelper() (defined elsewhere)
helper.add_input(Submit("submit", "Submit")
return render(request, 'Project/template1.html', {'formset': formset, 'helper': helper})
有人可以帮忙吗?谢谢。
最佳答案
这正是 session 的目的。在 View 1 中:
request.session['list'] = list_to_process
在 View 2 中:
list_to_process = request.session['list']
关于python - 如何在 Django 中将列表从一个 View 传递到另一个 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26374155/