我正在尝试构建一个表单以将其用作我的项目搜索页面的过滤器,但 {{form}} 没有显示任何内容。一切设置方式如下:
我尝试使用 models.py 中的模型
class Exemplar(models.Model):
class Meta:
verbose_name_plural = 'Exemplares'
tipoDeExemplar = models.ForeignKey(TipoDeExemplar, on_delete=models.SET_NULL, blank=True, null=True, verbose_name="Tipo De Exemplar")
numeroDeRegistro = models.CharField(max_length=255, verbose_name="Número Do Registro")
especie = models.ForeignKey(Especie, on_delete=models.CASCADE, null=True)
dataDoRegistro = models.DateField(blank=True, null=True, verbose_name="Data Do Registro")
estadoDoExemplar = models.CharField(blank=True, null=True, max_length=255, verbose_name="Estado do Exemplar")
tipoDeMaterial = models.CharField(blank=True, null=True, max_length=255, verbose_name="Tipo De Material")
procedencia = models.CharField(blank=True, null=True, max_length=255, verbose_name="Procedência")
remetente = models.CharField(blank=True, null=True, max_length=255, verbose_name="Remetente")
armario = models.CharField(blank=True, null=True, max_length=255, verbose_name="Armário")
gaveta = models.CharField(blank=True, null=True, max_length=255, verbose_name="Gaveta")
complemento = models.CharField(blank=True, null=True, max_length=255, verbose_name="Complemento")
amostraDeOrigem = models.CharFie
fotoDoExemplar = models.ImageField(null=True, blank=True, upload_to='imagens/', verbose_name="Foto Do Exemplar")
slug = models.SlugField(max_length=255, unique=True)
def __str__(self):
return self.numeroDeRegistro
我的forms.py文件(很短)
from django.forms import ModelForm
from acervo.models import Exemplar
class ExemplarForm(ModelForm):
class Meta:
model = Exemplar
fields = '__all__'
我对views.py的看法(似乎有效,因为我可以打开页面)
class BuscaView(ListView):
model = Exemplar
template_name = 'busca.html'
form_class = ExemplarForm
我尝试使用 Django ModelForm 的 HTML 模板部分
<form action="" method="post">
{% csrf_token %}
{{ form }}
<input type="submit" value="Create" />
</form>
根据我在其他帖子和 YouTube 教程中研究的内容,一切似乎都正常,但仅显示按钮。 可能是什么问题?
我认为首先你需要在代码的第1行或第2行中写入
{% block content %}
,最后你应该在代码的下方用{% endblock %}
关闭它
并且您应该将您的 url 视图写入标签中的操作中;
<form action="{% url 'app_name:url_name' %}">
网址名称:
`urlpatterns = [
path('url', your_view, name='url_name'),
]`