【发布时间】:2020-05-18 07:05:02
【问题描述】:
目前我正在关注一个关于 django 的教程。但现在我陷入了在 django 中创建表单的过程中。 我看了很多教程,也阅读了 django 文档,但到目前为止我无法解决我的问题。
我尝试从我的数据库中的模型创建表单
这是我的代码:
models.py
class Order(models.Model):
STATUS = (
('Pending', 'Pending'),
('Out of Delivery', 'Out of Delivery'),
('Delivered', 'Delivered')
)
customer = models.ForeignKey(Customer, null=True, on_delete=models.SET_NULL)
product = models.ForeignKey(Product, null=True, on_delete=models.SET_NULL)
date_created = models.DateTimeField(auto_now_add=True, null=True)
status = models.CharField(max_length=200, null=True, choices=STATUS)
views.py
from django.shortcuts import render
from .models import *
from .forms import OrderForm
def create_order(request):
form = OrderForm()
context = {
'form': form
}
return render(request, 'accounts/create_order.html', context)
forms.py
from django.forms import ModelForm
from .models import *
class OrderForm(ModelForm):
class Meta:
model = Order
fields = '__all__'
create_order.html
{% extends 'accounts/main.html'%}
{% block content%}
<form action="" method="POST">
{% csrf_token%}
{{form.as_p}}
</form>
{% endblock %}
问题是,create_order.html 向我显示了表单的标签,但没有显示输入字段,我不知道为什么。 我添加了我的浏览器的图片,所以你明白我的意思。 如果有人可以帮助我解决我的问题,我将不胜感激
【问题讨论】:
-
检查 HTML 源代码显示的内容;可能发生了什么阻止显示字段,即使它们在那里。
-
如果可能,您可能还想提及(并可选择链接到)您正在关注的教程。并指出你正在使用的 Django 版本,以完成。
标签: django django-forms