簡體   English   中英

Django手動創建和提交表單

[英]Django create and submit form manually

問題是我的形式是動態的。 每次根據數據庫中的數據可能會有不同數量的字段。 我能夠手動呈現此表單(通過將屬性和類型作為上下文傳遞給模板)。 但是我該如何處理django中按下“提交”按鈕的操作?

假設您已經在您的views.py中提供了渲染模板的功能,那么您基本上只需要驗證是否發布了任何數據即可:

def contact(request): # let's say it's a contact form
    if request.method == 'POST': # If the form has been submitted...
        print(request.POST)
        # do your things with the posted data
    else: # form not posted : show the form.
        return render(...)

另外請注意,您必須在模板的<form></form>之間的任意位置手動添加{% csrf_token %} ,這基本上會添加一個隱藏字段,以保護您的站點免受跨站點請求偽造攻擊。

而且,如果您這樣做,就不要在表單中放置任何action屬性,這樣它就可以發布到相同的url中。

暫無
暫無

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

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