程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

字符串(0)

异常(0)

标签  

python字符串(0)

异常(0)

日期归档  

Django Form 初始化数据

发布于2019-08-05 19:10     阅读(1320)     评论(0)     点赞(2)     收藏(1)


修改 urls.py 添加

    path('initial.html', views.initial),

修改 models.py

class UserInfo(models.Model):
    name = models.CharField(max_length=32)
    ut = models.ForeignKey('UserType', on_delete=models.CASCADE)

创建数据库

python manage.py makemigrations
python manage.py migrate

插入表数据

修改 views.py

def initial(request):
    from app01 import models
    if request.method == 'GET':
        nid = request.GET.get('nid')
        m = models.UserInfo.objects.filter(id=nid).first()
        dic = {'username': m.name, 'user_type': m.ut_id}

        obj = forms.InitialForm(dic)
        return render(request, 'initial.html', {'obj': obj})

修改 forms.py

class InitialForm(DForms.Form):
    username = fields.CharField()
    user_type = fields.IntegerField(
        widget=widgets.Select(choices=[])
    )

    def __init__(self, *args, **kwargs):
        # 执行父类构造方法
        super(InitialForm, self).__init__(*args, **kwargs)

        self.fields['user_type'].widget.choices = models.UserType.objects.all().values_list('id', 'caption')

在 templates 文件夹下创建 initial.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    {{ obj.username }}
    {{ obj.user_type }}
</body>
</html>

访问 http://127.0.0.1:8000/initial.html?nid=2 ,根据 nid=2 参数初始化



所属网站分类: 技术文章 > 博客

作者:浮沉

链接:https://www.pythonheidong.com/blog/article/6779/2040f32ff02f4e3a13c7/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

2 0
收藏该文
已收藏

评论内容:(最多支持255个字符)