首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

django多对多关系(当中表)表单

2012-12-28 
django多对多关系(中间表)表单假设App表有个字段depency models.ManyToManyField(DataSource,throughA

django多对多关系(中间表)表单

假设App表有个字段

depency = models.ManyToManyField(DataSource,through='AppDepend',related_name='depency_resource')

AppDepend是中间表

?

#定义form

class AppDependInline(admin.TabularInline):#inlineModel
??? model = AppDepend

??? extra = 1
??? fk_name = 'app'

class AppSearch(BaseSearch):
??? inlines = (AppDependInline,)

然后在site里面注册site.register(App, AppSearch)

在添加页面中可以发现 表单下面多了一个 fieldset

在这里就是添加多对多关系的地方,选择select,填写中间表AppDepend其他信息,可以增删改,非常方便。

?

如果你觉得在select中不需要显示所有多对多的外键,可以这么做

有点忘了,后天补上

在model中 加上limit_choices_to如:

models.ForeignKey(Database, limit_choices_to={'isLogic':False})

?

?

?

热点排行