簡體   English   中英

Django,用數據重定向到另一個視圖

[英]Django, redirect to another view with data

我正在發送一份表格。 因此,如果它有效,我正在設置帶有message的變量消息。 因此,如果表單有效,我想重定向到另一個視圖,但也傳遞message變量。 它應該是一個語法問題。

成功提交后,它會重定向到包含url membership/enroll/studies.views.dashboard的視圖,這當然是錯誤的。

views.py

def enroll(request):
    user = request.user
    if request.method == 'POST':
        form = SelectCourseYear(request.POST)
        if form.is_valid():
            student = form.save(commit=False)
            student.user = request.user
            student.save()
            message = 'Successfully Enrolled'
        return redirect('studies.views.dashboard', {'message': message,})
    else:
        form = SelectCourseYear()
    return render(request, 'registration/step3.html',)

考慮使用會話在請求之間存儲任意數據: https//docs.djangoproject.com/en/dev/topics/http/sessions/

request.session['message'] = 'Successfully Enrolled'

或者,如果您只想向用戶顯示消息,您可能會對contrib.messages框架感到滿意: https ://docs.djangoproject.com/en/dev/ref/contrib/messages/

from django.contrib import messages
messages.success(request, 'Successfully Enrolled')

根據您上面的用例,我猜測contrib.messages更適合您的場景。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM