ジャンゴ/ Pythonは「1」を割り当てることができません:「Company.merchantは」「商人」のインスタンスでなければなりません
エラーself.companies.merchantにIDを与えるための方法を考え出すことができませんでした: "1"を割り当てることはできません: "Company.merchant"は "商人"インスタンスでなければなりません。
このような別の質問がありましたが、わかりませんでした。
self.merchant = Merchant.objects.create(
name='merchant',
ref_code='45664',
)
self.companies = Company.objects.create(
name='companyone',
ref_code='222',
merchant=Merchant.objects.first().id,
),
self.merchant.companies.add(*self.companies)
マーチャントモデル:
class Merchant(models.Model):
name = models.CharField(max_length=255)
ref_code = models.CharField(max_length=32)
会社モデル:
class Company(models.Model):
name = models.CharField(max_length=255)
ref_code = models.CharField(max_length=32)
merchant = models.ForeignKey(
'accounts.Merchant', related_name='companies')
Merchantインスタンス(またはmerchant_id)が既に設定されている会社を作成した場合、「merchant.companies.add(...)」の呼び出しは不要です。企業は_already_です商人にリンクされています。 –