我想在models.py中動態指定模型字段。例如:如何動態添加模型字段?
class ModelA(models.Model):
pass # whatever
# immediately after class declaration in models.py
if django_is_not_non_rel:
MyModel.all_modelb = models.ManyToManyField(ModelB, through="ModelAB")
但此代碼示例不起作用。當條件成立時,ModelA在所有事物初始化後都沒有all_modelb字段。爲什麼????我如何影響我的意圖?
你爲什麼要做這個? –
我試圖讓我的例子儘可能簡單。真實情況是隻有在特定條件成立時才添加動態模型字段。在我的情況下,該字段是一個ManyToManyField,如果Django框架是NonRel,則不會添加...您有解決方案嗎? – jacob
爲什麼不在模型中添加字段,並在條件爲真的情況下向其添加關係? AFAIK,特定模型的所有實例應該具有相同的字段。 (但我沒有那種經驗與Django .. :) –