Djangoの色々と勉強しているものです。
モデルのリレーションについて質問があります。
ユーザーとイベントカテゴリーとエリアモデルを使い以下のことを行おうとしているのですが上手くいきません。お力なってくれる方がいれば幸いです。
・ユーザーがどのイベントカテゴリーとそれに伴ったエリアに興味があるかを管理できるシステム
・各ユーザーに対してイベントカテゴリー被ってはいけない
・ユーザーとイベントカテゴリーとエリアモデルを管理するためにChooseEventモデルを中間に置きました。
自分が作ったmodels.pyです。
python
1from django.db import models 2# Abstract Modelでupdatedとmodifiedフィールドを共通フィールドに 3from core.models import TimeStampedModel 4from django.contrib.auth.models import User 5 6 7class EventCategory(TimeStampedModel): 8 category_name = models.CharField(max_length=200) 9 10 def __str__(self): 11 return self.category_name 12 13 14class Area(TimeStampedModel): 15 area_name = models.CharField(max_length=200) 16 17 def __str__(self): 18 return self.area_name 19 20 21class ChooseEvent(TimeStampedModel): 22 categories = models.ForeignKey(EventCategory, on_delete=models.CASCADE) 23 area_list = models.ForeignKey(Area, on_delete=models.CASCADE) 24 user = models.ForeignKey(User, on_delete=models.CASCADE) 25 26 def __str__(self): 27 return str(self.user)
このコードですと各ユーザーに必ず1つのイベントカテゴリー名が制御できません。
forms.pyなどで制御するしかないのでしょうか?
どなたかお力添えよろしくお願いします。
それともう一つ質問があります。
ForeignKeyのon_delete=models.CASCADEとはどう云う意味なのでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/09/27 05:00
2016/09/27 09:59