衝突を引き起こす 2 つの抽象基本クラスがあります。
class DateModel(models.Model):
created_by = models.ForeignKey(User, null=True,
related_name="%(app_label)s_%(class)s_created_user")
modified_by = models.ForeignKey(User, null=True,
related_name="%(app_label)s_%(class)s_modified_user")
class Meta:
abstract = True
class UUIDModel(DateModel):
uuid = models.CharField(blank=True, editable=False, max_length=36,
unique=True, default=make_uuid)
class Meta:
abstract = True
UUID から継承する通常のモデルでは、衝突が発生します。
class ModelA(UUIDModel):
...
エラー:
product.ModelA: フィールド 'created_by' のアクセサーが関連フィールド 'User.product_ModelA_created_user' と衝突します。「created_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'created_by' の逆クエリ名が関連フィールド 'User.product_ModelA_created_user' と衝突します。「created_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'created_by' のアクセサーが関連フィールド 'User.product_ModelA_created_user' と衝突します。「created_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'created_by' の逆クエリ名が関連フィールド 'User.product_ModelA_created_user' と衝突します。「created_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' のアクセサーが関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' の逆クエリ名が関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' のアクセサーが関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' の逆クエリ名が関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。modified_by は、関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' の逆クエリ名が関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' のアクセサーが関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' の逆クエリ名が関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。modified_by は、関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' の逆クエリ名が関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' のアクセサーが関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' の逆クエリ名が関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。User.product_ModelA_modified_user'. 「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' の逆クエリ名が関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' のアクセサーが関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' の逆クエリ名が関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。User.product_ModelA_modified_user'. 「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' の逆クエリ名が関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' のアクセサーが関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' の逆クエリ名が関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。によって変更'。product.ModelA: フィールド 'modified_by' の逆クエリ名が関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' のアクセサーが関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' の逆クエリ名が関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。によって変更'。product.ModelA: フィールド 'modified_by' の逆クエリ名が関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' のアクセサーが関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' の逆クエリ名が関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' のアクセサーが関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' の逆クエリ名が関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' のアクセサーが関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。product.ModelA: フィールド 'modified_by' の逆クエリ名が関連フィールド 'User.product_ModelA_modified_user' と衝突します。「modified_by」の定義に related_name 引数を追加します。product_ModelA_modified_user'. 「modified_by」の定義に related_name 引数を追加します。product_ModelA_modified_user'. 「modified_by」の定義に related_name 引数を追加します。
これらの衝突をどのように解決できますか?
ありがとう