我正在基于ManyToManyRawIdWidget构建我自己的小部件。
但只要我在我的ModelAdmin中尝试以下内容:
formfield_overrides = {
ManyToManyField: {'widget': ManyToManyRawIdWidget},
}它会提示我
__init__() takes exactly 2 arguments (1 given)我想我需要用一些东西来填充rel参数,可能是关系模型(这是一个Tag模型)
但后来我遇到了一个TemplateSyntaxError:
Caught AttributeError while rendering: type object 'Tag' has no attribute 'to'这就是我失去监管的地方。有谁能帮帮我吗?
发布于 2011-02-10 03:24:13
我只想确保你注意到了documentation for formfield_overrides中的这个警告
警告
如果您想使用带有关系字段的自定义小部件(例如,ForeignKey或ManyToManyField),请确保在raw_id_fields或radio_fields中没有包含该字段的名称。
formfield_overrides不允许您更改设置了raw_id_fields或radio_fields的关系字段上的小部件。这是因为raw_id_fields和radio_fields暗示了它们自己的自定义小部件。
我不知道ManyToManyRawIdWidget,但从它的名称判断,我假设在这种情况下可能设置了raw_id_fields?这可能就是它不起作用的原因。
https://stackoverflow.com/questions/4949089
复制相似问题