如何将数据传递给另一个视图函数进行处理
Posted
技术标签:
【中文标题】如何将数据传递给另一个视图函数进行处理【英文标题】:How do I pass data to another view function for processing 【发布时间】:2022-01-23 18:42:15 【问题描述】:我有以下代码需要传递给另一个函数process_payment
以进行进一步处理。我已经尝试了下面的代码,但它似乎没有按预期工作。
def SubscribePage(request):
if request.method == 'POST':
form = PaymentForm(request.POST)
if form.is_valid():
name = form.cleaned_data['name']
email = form.cleaned_data['email']
phone = form.cleaned_data['phone']
amount = '20'
return redirect(process_payment(name, email, phone, amount))
else:
form = PaymentForm()
context =
'form': form
return render(request, 'subscribe.html', context)
请告知我可能出错的地方。问候。
【问题讨论】:
【参考方案1】:我需要查看您的 process_payment(),但也许重定向应该是这样的:
return redirect('process_payment', name, email, phone, amount)
也就是说,假设 process_payment 是您要重定向到的视图,然后这些参数将在视图中定义,如下所示:
def process_payment(request, name, email, phone, amount):
如果 process_payment() 只是一个函数,而不是一个视图,那么我认为您不会重定向到它,您只需调用它:
process_payment(name, email, phone, amount)
【讨论】:
以上是关于如何将数据传递给另一个视图函数进行处理的主要内容,如果未能解决你的问题,请参考以下文章
如何在将数据推送到导航堆栈之前将数据传递给视图控制器并加载它?
SwiftUI 如何将数据传递给 ObservedObject 函数