回答編集履歴
2
修正したコード箇所の追記
answer
CHANGED
@@ -59,12 +59,14 @@
|
|
59
59
|
-------------------
|
60
60
|
ご返信ありがとうございます、承知しました。
|
61
61
|
では、ChooseEventモデルを以下のように変更するといかがですか。
|
62
|
+
追加したのは、class Metaのunique_togetherです。
|
62
63
|
```python
|
63
64
|
class ChooseEvent(TimeStampedModel):
|
64
65
|
categories = models.ForeignKey(EventCategory, on_delete=models.CASCADE)
|
65
66
|
area_list = models.ForeignKey(Area, on_delete=models.CASCADE)
|
66
67
|
user = models.ForeignKey(User, on_delete=models.CASCADE)
|
67
68
|
|
69
|
+
# ここを追加!
|
68
70
|
class Meta:
|
69
71
|
unique_together = ('categories', 'user',)
|
70
72
|
|
1
返信みました!
answer
CHANGED
@@ -51,4 +51,28 @@
|
|
51
51
|
・PROTECT (削除できないように保護する)
|
52
52
|
・SET_NULL (nullを入れる。null=True、等と指定しておかなくてはいけません)
|
53
53
|
...
|
54
|
-
などで挙動が変更できます。
|
54
|
+
などで挙動が変更できます。
|
55
|
+
|
56
|
+
|
57
|
+
-------------------
|
58
|
+
2016/09/27 17:30追記
|
59
|
+
-------------------
|
60
|
+
ご返信ありがとうございます、承知しました。
|
61
|
+
では、ChooseEventモデルを以下のように変更するといかがですか。
|
62
|
+
```python
|
63
|
+
class ChooseEvent(TimeStampedModel):
|
64
|
+
categories = models.ForeignKey(EventCategory, on_delete=models.CASCADE)
|
65
|
+
area_list = models.ForeignKey(Area, on_delete=models.CASCADE)
|
66
|
+
user = models.ForeignKey(User, on_delete=models.CASCADE)
|
67
|
+
|
68
|
+
class Meta:
|
69
|
+
unique_together = ('categories', 'user',)
|
70
|
+
|
71
|
+
def __str__(self):
|
72
|
+
return str(self.user)
|
73
|
+
```
|
74
|
+
|
75
|
+
これですと、taroがEvent1を一度選び保存すると、次回以降taroはEvent1で新たに保存しようとすると
|
76
|
+
エラーとなります。
|
77
|
+
|
78
|
+
いかがでしょうか。
|