0
外部キーにプロキシモデルインスタンスを使用することはできますか?Djangoのプロキシタイプと外部キー
これには何らかの欠点や危険性がありますか?
サンプルコード:
base_models.py
class BaseWidget(models.Model):
name = models.CharField(max_length=100)
code = models.CharField(max_length=100)
class BasePart(models.Model):
name = models.CharField(max_length=100)
code = models.CharField(max_length=100)
widget = models.ForeignKey(BaseWidget, related_name="parts")
models.py
from base_models import BaseWidget, BasePart
class Part(BasePart):
class Meta:
proxy = True
class Widget(BaseWidget):
def replace_part(self, old_code, new_code):
self.parts.filter(code=old_code).delete()
self.parts.add(Part.objects.get(code=new_code))
class Meta:
proxy = True
replace_part
ではPart
、ないBasePart
を添加することであることに注意してください。これは私が疑問に思っていることです - これがDjangoに受け入れられるかどうか、もしそうなら、これに隠された欠点や危険があるかどうか。