Python Django admin many-to-many 多选框改成复选框
2013-11-06 10:59
393 查看
在django 的admin中,若有两张表为many-to-many的关系,则使用django model类里面的ManyToManyField了。并且可以选择自定义中间表,在ManyToManyField里面添加属性through=“中间表的model类”。嘿嘿,脱离话题了,下面进入主题吧。
models.py
admin.py
下面是效果图:
个人认为比默认的多选框强,需要的就拿去吧。
models.py
class Person(models.Model): name = models.CharField(primary_key=True, max_length=128) desc = models.CharField(max_length=256) def __unicode__(self): return self.name class Meta: db_table = u'person' class Group(models.Model): name = models.CharField(max_length=128) members = models.ManyToManyField(Person, db_table='person_group') def __unicode__(self): return self.name class Meta: db_table = u'group'
admin.py
class GroupForm(forms.ModelForm): members = forms.ModelMultipleChoiceField(widget=CheckboxSelectMultiple, queryset=Person.objects.all()) class Meta: model = Group class GroupAdmin(admin.ModelAdmin): form = GroupForm
下面是效果图:
个人认为比默认的多选框强,需要的就拿去吧。
相关文章推荐
- python-django的many to one模型
- Django文档——Model中的ForeignKey,ManyToManyField与OneToOneField数据互相读取
- django ManyToMany 使用的注意事项
- Python: ValueError: too many values to unpack
- python models中的Foreign Key关系和Many-To-Many关系
- django的ManyToManyField
- python 之sqlalchemy many to one
- 如何得到django中form表单里的复选框(多选框)的值( MultipleChoiceField )
- django1.2中将ManyToManyField呈现为checkbox
- django 学习个人总结 之many_to_one
- python - Preventing django from appending "_id" to a foreign key field - Stack Overflow
- Django-Model中的ForeignKey,ManyToManyField与OneToOneField
- Django文档——Model中的ForeignKey,ManyToManyField与OneToOneField - 再见紫罗兰
- Django 多表关联 存储 使用方法 ManyToManyField save
- Django manytomany 字段的读写操作及总结
- django migrate 字段类型更改ManyToMany erros
- 7.8-7.10 JLL实习日志-DjangoAPI+python+json,post for many records in a time
- Configure PHP and Django (Python) to run on the same Apache site.
- Django实战(19):自定义many-to-many关系,实现Atom订阅
- 【Django基础入门】ManyToManyField跨越中间表查询