将小部件添加到扩展

时间:2013-11-01 13:23:07

标签: django widget feincms

是否可以为扩展添加/使用小部件?

def group(cls, admin_cls):

    cls.add_to_class('group',
        models.ManyToManyField(
            Group,
            widget=?????
          ))

我想将Django的FilteredSelectMultiple用于多对多字段。

1 个答案:

答案 0 :(得分:0)

你究竟要过滤什么?如果它是静态值,您只需将limit_choices_to属性用于ManyToManyField即可。 E.g。

cls.add_to_class('group',
    models.ManyToManyField(
         Group,
         limit_choices_to={'name': 'Editors'},
    ))

如果它是动态值,则必须覆盖admin类的formfield_for_dbfield函数才能返回您喜欢的字段。如果你需要一个例子,请告诉我。