[英]Form in django form.as_p different
什么 form.to_p 准確返回?
我的意思是
這段代碼:
<form action="{{ action }}" method="post" enctype="multipart/form-data">
{% csrf_token %}
<input type="text" name="title_field" id="form.title}}"/>
<input type="text" name="author_field" id="form.author }}"/>
{{ form.content }}
<input type="submit" value="Send"/>
</form>
不起作用,而不是此代碼有效:
<form action="" method="post" enctype="multipart/form-data">
{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="Send"/>
</form>
當然,在第一種情況下,我可以在 html/css 特定字段中進行樣式化。
@編輯
通過工作,我的意思是轉發。 在第一秒什么都不做
表單在 Django 中有幾個可選的渲染選項:as_p、as_table、as_ul
沒有任何渲染選項:
<form action="" method="post" enctype="multipart/form-data">
{% csrf_token %}
{{ form }}
<input type="submit" value="Send"/>
</form>
將呈現如下所示的表單:
<form action="" method="post" enctype="multipart/form-data">
<input>
<input>
<input>
...
</form>
添加渲染選項 as_p 只是將輸入字段包裝在段落標簽中。 所以在這里添加 as_p :
<form action="" method="post" enctype="multipart/form-data">
{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="Send"/>
</form>
將呈現如下所示的表單:
<form action="" method="post" enctype="multipart/form-data">
<p><input></p>
<p><input></p>
<p><input></p>
...
</form>
要查看{{ form.as_p }}
輸出的內容,您可以在瀏覽器中單擊“查看源代碼”並查看呈現的 html。
我不建議像您的第一個示例那樣手動渲染字段。 很容易犯錯誤。 例如,您忘記了開頭{{
in id="form.title}}"
。
如果需要向輸入添加自定義類,可以通過更改字段的小部件來實現。 或者,您可能會發現酥脆的形式很有用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.