首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么我的单选按钮不渲染呢?

为什么我的单选按钮不渲染呢?
EN

Stack Overflow用户
提问于 2014-07-03 02:54:13
回答 1查看 70关注 0票数 1

models.py

代码语言:javascript
复制
class Trip(models.Model):
    location_name = models.CharField(max_length=60)
    trip_date = models.DateField()
    trip_rating = models.IntegerField(validators=[MinValueValidator(1),MaxValueValidator(5)])
    fishing_vehicle = models.ForeignKey(FishingVehicle)
    water_body = models.ForeignKey(WaterBody)
    user = models.ForeignKey(User)
    def __unicode__(self):
        return self.location_name

forms.py

代码语言:javascript
复制
class TripForm(ModelForm):
    class Meta:
        model = Trip
        exclude = ['user']
        CHOICES = (('1', 'First',), ('2', 'Second',))
        trip_rating = forms.ChoiceField(widget=forms.RadioSelect, choices=CHOICES)

logtrip.html

代码语言:javascript
复制
{% extends "base.html" %}

{% block content %}

<div class="container">
  <!-- Example row of columns -->
  <div class="row">
    <div class="col-md-4">
      <form action="/logtrip/" method="post">
        {% csrf_token %}
        {{ form.as_p }}
        <input type="submit" value="Submit" />
      </form>
    </div>
  </div>
</div>

{% endblock %}

我的表单呈现时没有错误,但是不是为trip_rating字段获取一对单选按钮,而是呈现一个数字字段,

代码语言:javascript
复制
<input id="id_trip_rating" name="trip_rating" type="number">

我怎样才能得到那些单选按钮?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-03 03:01:14

模型表单中的表单字段是类级属性,而不是Meta属性。

代码语言:javascript
复制
class TripForm(ModelForm):

    CHOICES = (('1', 'First',), ('2', 'Second',))
    trip_rating = forms.ChoiceField(widget=forms.RadioSelect, choices=CHOICES)

    class Meta:
        model = Trip
        exclude = ['user']

应该能起作用。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24544201

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档