工作中遇到的问题,自定义了一个形式。形式表单,某项需要作出下拉菜单,下拉菜单中的选项需要从数据库(objectForm模型)中提取。
<强> form.py为:强>
类objectForm (forms.Form):
引用>
pre=choicefield(标签="工作”)最后的解决办法:
<强> 1。定义一个函数强>
def get_object(请求): r=[(“,“——”)] 在objectModels.objects.all obj (): r=r + [(obj。id, obj.name)] 返回r<强> 2。在views.py的视图函数中加入强>
form.fields['前']。选择=get_object(请求)
引用>收工!
百度了很多Django形式的问题都没有得到解决,写出来方便后来的人。
<强> django形式表单选择下拉菜单数据源实时更新(每次访问获取一次数据库内容)强>
重点是:表单类对象实例化的时候,在类里边__init() __函数中加入重新更新选择数据源
django。快捷方式进口呈现,定向 从app3导入模型 从app3导入形式 从django导入形式 django。形式进口部件 #静态字段,value_list获取列表(())加元组返回值 类Fromdb (forms.Form): 目的=forms.CharField () 用户=forms.IntegerField ( 小部件=widgets.Select () ) #保证每次访问重新获取最新数据 def __init__(自我,* args, * * kwargs): 超级(Fromdb,自我). __init__ (* args, * * kwargs) self.fields .widget.choices=models.Stu.objects(“用户”)。values_list (“id”、“名称”) def formdb(请求): 学生=Fromdb () 返回渲染(请求、“formdb.html”{“学生”:学生})以上这篇自定义Django形式中choicefield下拉菜单选取数据库内容实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
自定义Django形式中choicefield下拉菜单选取数据库内容实例