Django |保存模型的选择列表值

时间:2010-04-20 11:04:55

标签: django

我有一个有选择列表的表单:

<select name="cellSerpro" id="idcellserpro" class="field text" >
    <option value="">---</option>
    <option value="option1">Verizon</option>
    <option value="option2">AT&T</option>
    <option value="option3">T-Mobile</option>
    <option value="option4">Sprint</option>
</select>

那么如何从Django的模型类中获取它的选定值以便将其保存在数据库中,我已经在网上搜索但是找不到任何方法来做它..

我的样本模型:

class Author(models.Model):
    first_name = models.CharField(max_length=100)
    last_name = models.CharField(max_length=3)
    cellSerpro = # ---- how to declare the choice list and get the selected value ----

谢谢.. 谢谢..

1 个答案:

答案 0 :(得分:7)

您应该使用ModelForms

(更新)

1)在models.py中,您可以定义选项:

CELLSERPRO_CHOICES = (
    ('ver', 'Verizon'),
    ('att', 'AT&T'),
    ('tmo', 'T-Mobile'),
    ('spr', 'Sprint'),
)

2)在models.py中,在“类作者”中,您可以像这样定义cellSerpro字段:

class Author(models.Model):
    cellSerpro = models.CharField(max_length=3, choices=CELLSERPRO_CHOICES)

3)在你的forms.py中(如果你没有它就创建它),你可以定义一个这样的表格:

class AuthorForm(ModelForm):
    class Meta:
        model = Author

4)然后,只需use that form in a view,就像使用任何其他形式一样。