私は2つのモデルの会社とキャンペーンを持っています。私はそれらの間に関係を作り出す必要があります。私のモデルは大丈夫だと思います。djangoクラスベースのビューを使用して2つのモデル間の関係を作成
企業/ model.py
class Company(models.Model):
class Meta:
verbose_name_plural = "companies"
user = models.ForeignKey(settings.AUTH_USER_MODEL)
title = models.CharField(blank=False, max_length=128, default='')
slug = models.SlugField(blank=True, unique=True)
archived = models.BooleanField(default=False)
timestamp = models.DateTimeField(auto_now_add=True, auto_now=False)
キャンペーン/ models.py
class Campaign(models.Model):
class Meta:
verbose_name_plural = "campaigns"
company = models.ForeignKey('companies.Company', on_delete=models.CASCADE,)
title = models.CharField(blank=False, max_length=128, default='')
slug = models.UUIDField(default=uuid.uuid4, blank=True, editable=False)
def __str__(self):
return str(self.title)
キャンペーン/ forms.py
class CampaignForm(forms.ModelForm):
class Meta:
model = Campaign
fields = ['title','description','archived']
のキャンペーン/ views.py
class CampaignCreateView(SubmitBtnMixin, CreateView):
model = Campaign
company = None
form_class = CampaignForm
submit_btn = "Add Campaign"
template_name = "form.html"
キャンペーン/ urls.py
url(r'^campaign/create/$', CampaignCreateView.as_view(), name='campaign-create'),
私の質問です、私は会社のPKを拾うんし、どのように新しいキャンペーンを作成するときキャンペーンモデルに値を設定しますか?これを行うための最も安全でベストプラクティスは何ですか?