我有一个使用raw_id_fields的管理类。我想将其转换为相应外键对象的__unicode__
,而不是显示数字键。
我认为这样做的方法是向管理类添加表单。这个表单将是我想要更改的字段被我自己的小部件覆盖的表单。
作为中间步骤,我只想复制现有行为 - 因此原始id字段将显示其相邻图标。我有一个包含ForeignKeyRawIdWidget
小部件的表单。这个小部件需要一个参数,我不知道该给它什么。我试过ForeignKeyRawIdWidget(DBObjectName.objects.get(pk=53))
,但是我得到错误DBObjectName对象没有属性'to'。
我可以从related.py的定义中看出,widget需要一个to参数,但我不知道它在寻找什么。
答案 0 :(得分:0)
它正在寻找Class._meta.get_field('field to link').rel
形式的论据。
例如,我有一个名为Photo的类,其image字段是另一个类的ForeignKey,我希望ForeignKey的小部件看起来不同。 ForeignKeyRawIDWidget想要rel的参数是Photo._meta.get_field('image').rel
。