Django Form 实时从数据库中获取数据

时间:2023-03-09 17:36:23
Django Form 实时从数据库中获取数据

修改 models.py 添加

class UserType(models.Model):
caption = models.CharField(max_length=32)

执行命令,生成数据库

python manage.py makemigrations
python manage.py migrate

修改 forms.py 添加

from app01 import models
class DBForm(DForms.Form):
host = fields.CharField()
host_type = fields.IntegerField(
widget=widgets.Select(choices=[])
) def __init__(self, *args, **kwargs):
super(DBForm, self).__init__(*args, **kwargs)
self.fields['host_type'].widget.choices = models.UserType.objects.all().values_list('id', 'caption') # 自定义构造方法,实时从数据库中获取数据

Django Form 实时从数据库中获取数据