回答編集履歴

3

追記

2020/10/06 13:07

投稿

kairi003
kairi003

スコア1332

test CHANGED
@@ -37,3 +37,89 @@
37
37
  みたいにすればいいんじゃないですかね。
38
38
 
39
39
  テンプレート中で分割代入が効くかとかは試してないのでわかりませんが…
40
+
41
+
42
+
43
+
44
+
45
+ ---
46
+
47
+
48
+
49
+ ちょっとDjangoの記事とか見て手元で動かした結果、スクレイピング部分を省いてテーブルをパラメータに渡してrenderする、というだけなら以下のように書いて動きました。
50
+
51
+ item, element, datesの中身は適当です。
52
+
53
+
54
+
55
+ ご提示いただいたview.pyだけでは他のクラス構造がわからず動かせませんしDjangoORMはちょっとよくわからないです。ごめんなさい。
56
+
57
+
58
+
59
+ ```py
60
+
61
+ from django.shortcuts import render
62
+
63
+
64
+
65
+ def index(request):
66
+
67
+ items = ['foo', 'bar', 'baz']
68
+
69
+ element = ['hoge', 'fuga', 'piyo']
70
+
71
+ dates = range(3)
72
+
73
+
74
+
75
+ param = {'table': zip(items, element, dates)}
76
+
77
+
78
+
79
+ return render(request, 'polls/index.html', param)
80
+
81
+ ```
82
+
83
+ ```html
84
+
85
+ <html>
86
+
87
+ <body>
88
+
89
+ <table>
90
+
91
+ <tr border="1">
92
+
93
+ <th>名前</th>
94
+
95
+ <th>リンク先</th>
96
+
97
+ <th>日付</th>
98
+
99
+ </tr>
100
+
101
+ {% for x, y, z in table %}
102
+
103
+ <tr>
104
+
105
+ <td>{{ x }}</td>
106
+
107
+ <td>{{ y }}</td>
108
+
109
+ <td>{{ z }}</td>
110
+
111
+ </tr>
112
+
113
+ {% endfor %}
114
+
115
+ </table>
116
+
117
+ </body>
118
+
119
+ </html>
120
+
121
+ ```
122
+
123
+
124
+
125
+ ![結果](5e9282b6e79632abe9612babb7746b46.png)

2

修正

2020/10/06 13:06

投稿

kairi003
kairi003

スコア1332

test CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  cons = zip(content.name, content.link, content.date)
8
8
 
9
- ````
9
+ ```
10
10
 
11
11
 
12
12
 

1

修正

2020/10/05 16:32

投稿

kairi003
kairi003

スコア1332

test CHANGED
@@ -1,11 +1,39 @@
1
1
  Djangoを使ったことがあるわけではないので間違ってるかもしれませんが、
2
+
3
+
4
+
5
+ ```py
6
+
7
+ cons = zip(content.name, content.link, content.date)
8
+
9
+ ````
10
+
11
+
12
+
13
+ のようにzipでまとめて
14
+
15
+
16
+
17
+ ```html
18
+
19
+ {% for x, y, z in cons %}
20
+
21
+ <tr>
22
+
23
+ <td>{{ x }}</td>
24
+
25
+ <td>{{ y }}</td>
26
+
27
+ <td>{{ z }}</td>
28
+
29
+ </tr>
30
+
31
+ {% endfor %}
2
32
 
3
33
  ```
4
34
 
5
- z = zip(content.name, content.link, content.date)
6
35
 
7
- ````
8
36
 
9
- のようzipまとめて
37
+ みたいすればいいんじゃないすかね。
10
38
 
11
- ```py
39
+ テンプレート中で分割代入が効くかとかは試してないのでわかりませんが…