如何在 Modelform 的网格中呈现 Django CheckoxInput?

     2023-02-24     32

关键词:

【中文标题】如何在 Modelform 的网格中呈现 Django CheckoxInput?【英文标题】:How to render Django CheckoxInput in a grid from Modelform? 【发布时间】:2022-01-03 17:05:13 【问题描述】:

models.py

class MyModel(Model):
    author = ForeignKey(settings.AUTH_USER_MODEL, on_delete=CASCADE)
    title = CharField(max_length=200, default='')
    text = TextField(default='')
    choice_1 = BooleanField(default=False)
    choice_2 = BooleanField(default=False)
    choice_3 = BooleanField(default=False)
    choice_4 = BooleanField(default=False)
    choice_5 = BooleanField(default=False)
    choice_6 = BooleanField(default=False)

    def __str__(self):
        return self.title

forms.py

class MyModelForm(ModelForm):
        class Meta:
        model = MyModel
        fields = [
            'title',
            'text',
            'choice_1',
            'choice_2',
            'choice_3',
            'choice_4',
            'choice_5',
            'choice_6'
        ]

        widgets = 
            'text': Textarea(),
            'choice_1': CheckboxInput(),
            'choice_2': CheckboxInput(),
            'choice_3': CheckboxInput(),
            'choice_4': CheckboxInput(),
            'choice_5': CheckboxInput(),
            'choice_6': CheckboxInput()
        

我正在使用django bootstrap 5 integration 并尝试在这样的网格上呈现复选框:

% extends "base.html" %
% block content %
% load static %
% load bootstrap5 %
% bootstrap_css %
% bootstrap_javascript %
% bootstrap_messages %

(Other code here...)

<div class="row-cols-4">
            % for field in form %
                    <div class="col-sm">% bootstrap_field field layout='horizontal'%</div>
            % endfor %
        </div>

但是,行和列 css(也来自 bootstrap 5)似乎完全没有做任何事情,我并不清楚为什么会这样。我在这里做错了什么?

【问题讨论】:

【参考方案1】:

你也应该包含行类

<div class="row row-cols-4">
    % for field in form %
        <div class="col-sm">% bootstrap_field field layout='horizontal'%</div>
    % endfor %
</div>

【讨论】:

这行得通,谢谢!有没有办法限制每行的列数? 您可以通过将类“row-cols-4”更改为您想要的任何数字来限制它,例如每行 2 列使用“row-cols-2”。查看链接了解更多详情getbootstrap.com/docs/5.0/layout/grid/#row-columns 由于某种原因,它似乎不起作用 - 我的字段呈现的列比限制建议的多得多。嗯。 限制应该有效。尝试从浏览器检查中检查 html 以查看引导字段是否向您的类添加了任何其他内容

如何在 Django 的 ModelForm 中使用请求

】如何在Django的ModelForm中使用请求【英文标题】:HowtousetherequestinaModelForminDjango【发布时间】:2012-02-0902:54:28【问题描述】:我想创建一个查询集,将当前用户用作ModelForm中的过滤器:classBookSubmitForm(ModelForm):book=forms.ModelChoiceField... 查看详情

如何在modelform中给出初始值

】如何在modelform中给出初始值【英文标题】:Howtogiveinitialvalueinmodelform【发布时间】:2010-11-0611:23:12【问题描述】:如何为ModelForm中的字段分配初始值?例如:classForm1(forms.Form):title=forms.CharField(initial="hello")使用modelForm的等价物是... 查看详情

如何以角度 4 将数据呈现为网格/表格

】如何以角度4将数据呈现为网格/表格【英文标题】:Howtorenderdataasgrid/tableinangular4【发布时间】:2018-08-1417:23:07【问题描述】:我从外部微服务接收数据,这不是标准的,它就像动态数据一样。它可能包含或不包含表格数据。它... 查看详情

如何在 ModelForm 中使用 forms.ChoiceField()?

】如何在ModelForm中使用forms.ChoiceField()?【英文标题】:Howtouseforms.ChoiceField()insideModelForm?【发布时间】:2017-04-1415:05:24【问题描述】:我想使用ModelForm在我的表单中显示一个下拉列表。我的代码添加在下面-fromdjangoimportformsfromdjang... 查看详情

自定义小部件中的 dojo 数据网格未呈现

】自定义小部件中的dojo数据网格未呈现【英文标题】:dojodatagridincustomwidgetisnotrendering【发布时间】:2014-12-1816:09:38【问题描述】:大家好,我已经创建了一个自定义小部件,它在未来将包含多个数据网格,但是我在尝试让数据... 查看详情

如何使用 Ajax 在 Django 中更新 modelForm

】如何使用Ajax在Django中更新modelForm【英文标题】:HowtoupdateamodelForminDjangowithAjax【发布时间】:2015-12-2216:46:11【问题描述】:我想用Ajax更新一个模板。我的问题是:我在表单的列表中选择了一个客户,然后在第二个列表中的同一... 查看详情

如何在 Django ModelForm 中获取实例

】如何在DjangoModelForm中获取实例【英文标题】:HowgetInstanceinDjangoModelForm【发布时间】:2017-08-1712:27:14【问题描述】:我正在尝试使用基于类的通用视图UpdateView更新Django中的模型。但是我遇到了一些实例问题。当我单击提交按钮... 查看详情

使用 Django,如何在模板中动态设置 ModelForm 字段值?

】使用Django,如何在模板中动态设置ModelForm字段值?【英文标题】:UsingDjango,howdoIsetaModelFormfieldvaluedynamicallyinthetemplate?【发布时间】:2021-01-2722:31:43【问题描述】:我正在尝试利用复选框字段为用户选择的收藏夹创建模型实例。... 查看详情

如何使用 Modelform 和 jquery 在 django 中获取相互依赖的下拉菜单?

】如何使用Modelform和jquery在django中获取相互依赖的下拉菜单?【英文标题】:HowtogetInterdependentdropdownsindjangousingModelformandjquery?【发布时间】:2012-12-1618:23:01【问题描述】:我是django和jquery的新手。我正在开发一个基于django的应用... 查看详情

如何在 Vue Material 中设置灵活的网格

】如何在VueMaterial中设置灵活的网格【英文标题】:HowtosetupflexiblegridinVueMaterial【发布时间】:2020-05-1402:29:47【问题描述】:我正在尝试构建一个界面,该界面使用Vue-Material在网格中呈现用户输入的卡片。卡片渲染正确。但是,... 查看详情

ExtJS/Javascript:将子模型添加到父模型,在网格上呈现

】ExtJS/Javascript:将子模型添加到父模型,在网格上呈现【英文标题】:ExtJS/Javascript:addingachildModeltoaparentModel,renderingthisonagrid【发布时间】:2018-08-2405:41:58【问题描述】:短版:我有一个子模型,我需要将它添加到父模型中,然... 查看详情

Django中的ModelForm无法接收数据

】Django中的ModelForm无法接收数据【英文标题】:ModelForminDjangofailstoreceivedata【发布时间】:2016-11-1520:20:58【问题描述】:我有一个ModelForm,所有字段都是我想要的。当我在HTML中呈现此表单时,我提供了这些字段中所需的所有数据... 查看详情

Symfony2 KnpPaginator bundle 从多个实体获取数据并在一个网格/分页中呈现

】Symfony2KnpPaginatorbundle从多个实体获取数据并在一个网格/分页中呈现【英文标题】:Symfony2KnpPaginatorbundleGetDatafrommultipleentitiesandrenderinoneGrid/Pagination【发布时间】:2015-11-2419:39:13【问题描述】:我有一个名为MIS_Data_Entry的角色的场... 查看详情

如何在 ModelForm 中使用 admin.TabularInline

】如何在ModelForm中使用admin.TabularInline【英文标题】:Howtouseadmin.TabularInlineinaModelForm【发布时间】:2013-05-2007:34:42【问题描述】:全文Onlyvalidateadminformifconditionistrue我正在尝试验证表单是否有答案。为了在管理员中验证表单,您需... 查看详情

如何使用引导网格映射图像数组?

】如何使用引导网格映射图像数组?【英文标题】:HowcanIusebootstrapgridmappinganarrayofimages?【发布时间】:2019-10-0214:29:12【问题描述】:我正在使用gatsby.js构建一个投资组合网站。所有照片都发布在wordpress中,由graphQL获取并呈现到... 查看详情

刷新与调整浏览器窗口大小时网格布局呈现不同

】刷新与调整浏览器窗口大小时网格布局呈现不同【英文标题】:Gridlayoutrendereddifferentlyonrefreshvs.resizingbrowserwindow【发布时间】:2021-06-0819:57:41【问题描述】:我刚开始使用网格布局,并注意到它在相同的视口大小上呈现不同:(... 查看详情

Django中的ModelForm没有显示

】Django中的ModelForm没有显示【英文标题】:ModelForminDjangonotshowing【发布时间】:2021-07-0611:25:18【问题描述】:我正在尝试在django中显示一个基本表单,但一旦我运行服务器就不会呈现该表单,如果您能帮助我解决这些问题,我将... 查看详情

ExtJS可折叠面板在展开时不呈现工具栏?

...715:09:14【问题描述】:在可折叠面板中渲染带有工具栏的网格时遇到了麻烦。正如您在底部的代码中看到的那样,我有阅读器、存储、带有bbar和面板的网格。当我将面板的可折叠属性设置为false时,网格的工具栏呈现完美。但是... 查看详情