Py学习  »  问与答

怎么用foreignkey 实现Django下拉选择框

HelloSam • 9 年前 • 10780 次点击  

我想实现:用户点击“学院”下拉框,选择学院,点击“保存”按钮,就可以保存到数据库中。 以下是要保存的模型:

class RepairReport(models.Model):
    college = models.ForeignKey(College)

一下是供用户选择 学院 的模型:

class College(models.Model):
    collegename = models.CharField(verbose_name = '学院名称', blank = True, max_length = 255)
    def __unicode__(self):
        return self.collegename

这个模型里面包含着很多学院的名字。

请问在Form、Templates中,要怎么实现这个 下拉选择框 ?

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/1225
 
10780 次点击  
文章 [ 21 ]  |  最新文章 9 年前
MCC
Reply   •   1 楼
MCC    9 年前
class ReportForm(forms.Form):
    college = forms.ChoiceField(required=True, widget=forms.Select, choices=(),)

    def set_choices(self):
        colleges = College.objects.all()
        self.fields['college'].choices = ()
        for college in colleges:
            self.fields['college'].choices += [(college.id, college.collegename)]

没调试过,自己调错,就是要手动调用set_choices