是否有除了ManyToMany之外的Django ModelField支持多选?
我希望用户能够通过管理界面选择多个选项,并把结果存储为一个用逗号分隔的值的列表。使用多选框或者一系列复选框都很好。不过,我不需要这个值列表中的项目指向任何特定的模型……我只是想要一个简单的文本项目列表,所以我觉得ManyToManyField并不适合我。我想知道在Django中,最快的做法是什么?
3 个回答
0
4
Django-multiselectfield可以满足你的需求:
https://github.com/goinnn/django-multiselectfield
这个工具的灵感来源于亚历山大提到的代码片段。
11
这里有一个Django的代码片段,专门用来处理这个问题:多选模型字段。它提到:
通常情况下,你会想把多个选择存储为一个多对多的链接,连接到另一个表。不过,有时候把这些选择直接存储在模型里也是很有用的。这个字段实现了一个模型字段和一个对应的表单字段,可以把多个选择以逗号分隔的方式存储在一起,使用普通的CHOICES属性。