首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >django模型形式如何知道输入类型是支票簿?

django模型形式如何知道输入类型是支票簿?
EN

Stack Overflow用户
提问于 2018-09-04 18:53:26
回答 1查看 60关注 0票数 0

我的模型表单是一个动态生成的模型表单,我想知道modelform中is_true的类型。输入标签的类型是checkbook类型。如果我知道is_true字段的type=‘checkbox’,那么给他单独添加一个class attr。default type=‘checkbox’界面太难看了

模型

代码语言:javascript
复制
class Employee(AbstractBaseUser):
    """
    用户表
    """
    username = models.CharField(max_length=30, verbose_name='姓名')
    email = models.EmailField(verbose_name='邮箱', unique=True)
    is_true = models.BooleanField(default=False, verbose_name='是否超级用户')

视图

代码语言:javascript
复制
class ModelFormDemo(ModelForm):
    class Meta:
        model = self.model
        if self.list_editable:
            fields = self.list_editable
        else:
            fields = '__all__'

    excluded = self.excluded

    def __init__(self, *args, **kwargs):
        super(ModelFormDemo, self).__init__(*args, **kwargs)

def add_view(self, request):

    form = ModelFormDemo()

    if request.method == "POST":
        res_dict = {'status': 1, 'msg': 'success'}
        form = ModelFormDemo(request.POST)
        if form.is_valid():
            obj = form.save()
        else:
            res_dict['msg'] = form.errors
            res_dict['status'] = 2
        return JsonResponse(res_dict)
    return render(request, "xadmin/add_view.html", locals())

html

代码语言:javascript
复制
<form class="layui-form" method="post">
    {% csrf_token %}
    {% for field in form %}
        {% if field.name == 'employee' %}
            <input type="hidden" name="employee" value="{{ user.id }}">
        {% else %}
            <div class="layui-form-item">
                <label class="layui-form-label">{{ field.label }}</label>
                <div class="layui-input-inline">
                    {{ field }}
                </div>
            </div>
        {% endif %}
    {% endfor %}
    <div class="layui-form-item">
        <div class="layui-input-block">
            <input type="button" class="layui-btn" lay-filter="add" lay-submit="" value="add">
            </input>

            <button type="reset" class="layui-btn layui-btn-primary">reset</button>
        </div>
    </div>

</form>
EN

回答 1

Stack Overflow用户

发布于 2018-09-05 00:24:29

您可以在form __init__方法中使用Widget.attrs参数。

https://docs.djangoproject.com/en/dev/ref/forms/widgets/#django.forms.Widget.attrs

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52164640

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档