前提・実現したいこと
django初心者です。
外部キーを持つ子テーブルのデータの追加が出来ません。
python
1●models.py 2class Company(models.Model): 3 name = models.CharField(verbose_name=u'会社名',max_length=50, blank=True, null=True) 4 address = models.CharField(verbose_name=u'ご住所',max_length=100, blank=True, null=True) 5 email = models.CharField(verbose_name=u'メールアドレス',max_length=50, blank=True, null=True) 6 tel = models.CharField(verbose_name=u'電話番号',max_length=50, blank=True, null=True) 7 created_date = models.DateTimeField(auto_now_add = True) 8 updated_date = models.DateTimeField(auto_now = True) 9 10class Service(models.Model): 11 company = models.ForeignKey(Company ,on_delete=models.CASCADE) 12 service_detail= models.TextField(verbose_name=u'サービス内容',blank=True, null=True) 13 created_date = models.DateTimeField(auto_now_add = True) 14 updated_date = models.DateTimeField(auto_now = True)
python
1●forms.py 2class ServiceForm(forms.ModelForm): 3 4 class Meta: 5 model = Service 6 fields =('service_detail',)
python
1●views.py 2class ServiceCreateView(generic.CreateView): 3 template_name = 'form.html' 4 model = Service 5 form_class = ServiceForm 6 7 def post(self, request, *args, **kwargs): 8 form = self.form_class(request.POST) 9 10 company= Company.objects.get(id = self.kwargs['company_id']) 11 form.instance.company_id= company.id 12 form.save()
発生している問題・エラーメッセージ
Unknown column 'company_id' in 'field list
試したこと
1.view.pyで
form.instance.company_id= company.id
↓ に変更
form.instance.company= company
同じエラーが出てしまいます。
2.models.pyで
company = models.ForeignKey(Company ,on_delete=models.CASCADE)
↓ に変更
company = models.IntegerField(default=0)
テーブルの作成が出来ました。
しかし、ForeignKeyで作成したいです。
ご回答よろしくお願いします。
補足情報(FW/ツールのバージョンなど)
django=2.2
pyhton=3.8
mysql=14.14 Distrib 5.7.31
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。