簡體   English   中英

django我看不到我的表格

[英]django i can't see my form

我不明白為什么我看不到自己的表格。

我想創建一個帶有下拉菜單的表單,其中包含“騎手模型”的display_name作為選擇。

我的models.py:

class Rider(models.Model):
    first_name = models.CharField(max_length = 256,blank= True)
    last_name = models.CharField(max_length = 256,blank= True)
    display_name = models.CharField(max_length = 256,blank= True)
    birth = models.DateTimeField(default=timezone.now)
    place_of_birth = models.CharField(max_length = 256,blank= True)
    age = models.IntegerField(default = 0,blank= True)
    nationality = models.CharField(max_length = 256,blank= True)
    height = models.FloatField(default = 0.0 ,blank= True)
    weight = models.FloatField(default = 0.0 ,blank= True)
    team = models.CharField(max_length = 256, blank= True)
    team_code = models.CharField(max_length = 256, blank= True)
    cost = models.IntegerField(default = 0,blank= True)


    def __str__(self):
        return self.display_name

我的form.py:

class ScoreForm(forms.ModelForm):
   riders =forms.ModelChoiceField(queryset=Rider.objects.all(),to_field_name="display_name")
   class Meta:
      model = Rider
      fields = ('display_name',)

我的view.py:

class ScoreView(TemplateView):
    form_class = ScoreForm
    model=Rider
    template_name = 'blog/score.html'

我的score.html:

{% extends 'blog/base.html'%}
{% block content %}
<h1>Score page</h1>
<form method="POST" >
    {% csrf_token %}
    {{form}}
    <button type="submit" class="save btn btn-default" name="button">Save</button>
</form>
{% endblock %}

截圖: 截圖

要在模板上下文中自動包含表單,請子類FormView而不是TemplateView 表單視圖將根據form_class自動創建一個表單實例,並將其插入模板上下文中,您可以在其中使用標簽{{ form }}來呈現它。

from django.views.generic.edit import FormView

class ScoreView(FormView):
    ...

https://docs.djangoproject.com/en/2.0/topics/class-based-views/generic-editing/#form-handling-with-class-based-views

暫無
暫無

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

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