【发布时间】:2017-05-31 18:18:10
【问题描述】:
我有以下表格:
<form method="post" enctype="multipart/form-data">
{% csrf_token %}
{{ form.as_p }}
<button type="submit">Upload</button>
</form>
这会产生一个表单,它会产生(在 [] 括号中表示一个按钮):
**Document:**
[Choose File] no file selected
[Upload]
当我使用以下表格时:
<form method="post" enctype="multipart/form-data">
{% csrf_token %}
{{ form.document }}
<button type="submit">Upload</button>
</form>
我没有在 Safari 中看到“未选择文件”部分,但我在 chrome 中看到了。是否有某种“form.something”可以让我在任何浏览器中显示它。
表格如下:
class DocumentForm(forms.ModelForm):
class Meta:
model = Document
fields = ('document', )
型号如下:
class Document(models.Model):
user = models.ForeignKey(User)
document = models.ImageField(upload_to=user_directory_path)
uploaded_at = models.DateTimeField(auto_now_add=True)
手动示例的 HTML 输出(在 chrome 中):
<form method="post" enctype="multipart/form-data">
<input type='hidden' name='csrfmiddlewaretoken' value='2ZMTQTumTh5DS4nwVvAZv3IUSpM2o5LB' />
<input id="id_document" name="document" type="file" />
Document
<button type="submit">Upload</button>
</form>
手动示例的 HTML 输出(在 safari 中):
<form method="post" enctype="multipart/form-data">
<input type='hidden' name='csrfmiddlewaretoken' value='DTLKigyikubFrJqrh4AHR61Lmkyutrsw' />
<input id="id_document" name="document" type="file" />
Document
<button type="submit">Upload</button>
</form>
自动示例的 HTML 输出(在 safari 中):
文档:
上传非常感谢,艾伦。
【问题讨论】:
-
什么是
form.document? -
添加了我应该解释的表格和模型。非常感谢您提供信息。
-
渲染出来的html长什么样子?
-
添加不同的html输出,希望对您有所帮助:)
-
你能提供 chrome 和 safari 的结果截图吗?您使用什么版本的 Safari?
标签: django