質問編集履歴

2

説明のつけたし

2019/11/05 15:31

投稿

Rikunosuke
Rikunosuke

スコア6

test CHANGED
File without changes
test CHANGED
@@ -1,3 +1,9 @@
1
+ ##作りたいもの
2
+
3
+ ユーザーが自分の趣味やスキルなどをテキストベースで紹介するポートフォリオサイト的なもの
4
+
5
+
6
+
1
7
  ##やりたいこと
2
8
 
3
9
  ```Python
@@ -5,6 +11,10 @@
5
11
  class Box(models.Model):
6
12
 
7
13
  title = models.CharField(max_length=50)
14
+
15
+ order = models.PositiveIntegerField()
16
+
17
+
8
18
 
9
19
 
10
20
 
@@ -63,3 +73,9 @@
63
73
  ```
64
74
 
65
75
  をテンプレートに送り、子モデルのdescriptionメソッドをテンプレート内で呼び出したいのですが、親モデルの方が呼び出されてしまいます。解決策はあるのでしょうか。
76
+
77
+
78
+
79
+ ##補足
80
+
81
+ ユーザーにTextBoxやRatingBoxが紐づいており、orderを設定することによりどの順番で表示させるかを決めることができます。Requestを送ったユーザーのBoxをcontextとして送信し、orderの順番通りに並べたいです。

1

説明を簡潔にした

2019/11/05 15:31

投稿

Rikunosuke
Rikunosuke

スコア6

test CHANGED
File without changes
test CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  ```Python
4
4
 
5
- class Content(models.Model):
5
+ class Box(models.Model):
6
6
 
7
7
  title = models.CharField(max_length=50)
8
8
 
@@ -20,7 +20,7 @@
20
20
 
21
21
 
22
22
 
23
- class TextContent(Content):
23
+ class TextBox(Box):
24
24
 
25
25
  text = models.TextField(max_length=400)
26
26
 
@@ -32,17 +32,31 @@
32
32
 
33
33
 
34
34
 
35
+ class RatingBox(Box):
36
+
37
+ item = models.CharField(max_length=50)
38
+
39
+ rate = models.PositiveIntegerField()
40
+
41
+
42
+
43
+ def description(self):
44
+
45
+ return super().description() + self.item + "☆"*self.rate
46
+
47
+
48
+
35
49
  ```
36
50
 
37
51
 
38
52
 
39
- 上のようなContentを継承して子モデルをいくつか作り、全ての子モデルがdescriptionメソッドを持っています。この時、
53
+ 上のようなBoxモデルを継承して子モデル(TextBox, RatingBox)をいくつか作り、全ての子モデルがdescriptionメソッドを持っています。この時、
40
54
 
41
55
  ```python
42
56
 
43
57
  context = {
44
58
 
45
- "object_list":Context.objects.all()
59
+ "object_list":Box.objects.all()
46
60
 
47
61
  }
48
62