【问题标题】:Django: How to create a field with many booleanfields?Django:如何创建一个包含许多布尔字段的字段?
【发布时间】:2014-07-23 21:37:09
【问题描述】:

我正在尝试为我的闹钟应用程序创建一个 days_of_week 模型,用户可以在其中选择他们希望闹钟响起的星期几。我想为它使用 checkboxInput 小部件,但我找不到找到这样的字段的方法。有人可以告诉我如何制作这样的字段吗?

【问题讨论】:

    标签: django python-2.7 django-models


    【解决方案1】:

    您可以使用 CommaSeparatedIntegerField。更多信息https://docs.djangoproject.com/en/dev/ref/models/fields/

    【讨论】:

    • 如果链接页面出现故障,只有链接的答案将没有用处。你能至少总结一下页面上的内容吗?
    • @SiKing 答案是使用CommaSeparatedIntegerField。这是一个简短但有用的答案,有或没有链接。
    • 他是对的,CommaSeparatedIntegerField 实际上是我要找的,除了不是复选框格式
    • 您可以将复选框格式与 CommaSeparatedIntegerField 一起使用,但您必须使用表单中的小部件来定义它。此链接可以帮助您:djangosnippets.org/snippets/2051
    【解决方案2】:

    您需要使用 checkboxselectmultiple: https://docs.djangoproject.com/en/dev/ref/forms/widgets/#checkboxselectmultiple

    简短示例:

    select = forms.MultipleChoiceField(choices=CHOICES, widget=forms.CheckboxSelectMultiple)
    

    CHOICES 将是您一周中的几天。

    【讨论】:

    • 对不起。我错过了你在模型中需要它。不是表格但是为什么不把 7 booleanfield 放在你的模型中。不是说你需要一个长度为 n 的数量吗?
    • 目前我有 7 个布尔字段,但它在管理页面中垂直对齐,因为它们是 7 个不同的字段,我希望它改为水平对齐
    猜你喜欢
    • 2011-04-20
    • 2015-09-28
    • 2019-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多