質問編集履歴

11

本文訂正

2021/09/29 07:42

投稿

art35
art35

スコア13

test CHANGED
File without changes
test CHANGED
@@ -1,107 +1,105 @@
1
- 所属(仮にa,b,c)と所属に紐づいている場所(仮にa-1,a-2,b-1,c-1,c-2)を登録する以下のmodelを作成してhtmlで別々2つとも作成して表示したいです。
1
+ 所属(仮にa,b,c)と所属に紐づいている場所(仮にa-1,a-2,b-1,c-1,c-2)を登録する以下のmodelを作成して2つのhtmlで段階的に表示したいです。
2
+
3
+
2
4
 
3
5
  1:所属表示、
4
6
 
5
7
  2:所属に紐づいた場所の表示
6
8
 
9
+
10
+
7
11
  1から2へ遷移させるときに選択した所属に紐づいている場所のみを表示させたいのですが、
8
12
 
9
13
  所属している場所は変更されることもあり、a-3,b-2が増えることがあります。
10
14
 
15
+ 変化するデータベースの内容を制限して表示させる方法がわかりません。
16
+
17
+
18
+
11
- からリストやchoice指定できない場合にどのようにコードを書けばよいでしょう
19
+ 学者なのでどのように関数を入れたらいいのかコードでなに記述すればよい
12
-
13
-
14
-
20
+
15
- 今は一旦わからないのですべての所属の場所を全件取得います。
21
+ わからないのでわかる方がお見えでたらご教授お願ます。
22
+
23
+
24
+
25
+ ```
26
+
27
+ /models.py
28
+
29
+
30
+
31
+ class Department(models.Model):
32
+
33
+ """所属部署の登録"""
34
+
35
+
36
+
37
+ team_id = models.IntegerField(verbose_name='チームID')
38
+
39
+ team = models.CharField(max_length=50, unique=True, blank=True, verbose_name ='チーム')
40
+
41
+ line = models.ManyToManyField(
42
+
43
+ Line,
44
+
45
+ verbose_name ='ライン',
46
+
47
+ blank=True
48
+
49
+ )
50
+
51
+ def get_lines(self):
52
+
53
+ return ",".join([str(p) for p in self.line.all()])
54
+
55
+
56
+
57
+ def __str__(self):
58
+
59
+ return str(self.team)
60
+
61
+ ```
62
+
63
+
64
+
65
+ ```
66
+
67
+ /views.py
68
+
69
+
70
+
71
+ def teamlist(request):
72
+
73
+ object_team = Department.objects.all()
74
+
75
+ print(object_team)
76
+
77
+ return render(
78
+
79
+ request,
80
+
81
+ 'teamlist.html',
82
+
83
+ {'object_team':object_team}
84
+
85
+ )
16
86
 
17
87
  def linelist(request):
18
88
 
19
89
  object_line = Department.objects.all()
20
90
 
21
-
22
-
23
- わかる方ご教授お願いします。
24
-
25
-
26
-
27
- ```
28
-
29
- /models.py
30
-
31
-
32
-
33
- class Department(models.Model):
91
+ #print(object_line)
34
-
35
- """所属部署の登録"""
92
+
36
-
37
-
38
-
39
- team_id = models.IntegerField(verbose_name='チームID')
93
+ print("team_name:",request.GET.get('test_team'))
40
-
41
- team = models.CharField(max_length=50, unique=True, blank=True, verbose_name ='チーム')
94
+
42
-
43
- line = models.ManyToManyField(
95
+ return render(
44
-
96
+
45
- Line,
97
+ request,
46
-
98
+
47
- verbose_name ='ライン',
99
+ 'linelist.html', {'object_line': object_line}
48
-
49
- blank=True
50
100
 
51
101
  )
52
102
 
53
- def get_lines(self):
54
-
55
- return ",".join([str(p) for p in self.line.all()])
56
-
57
-
58
-
59
- def __str__(self):
60
-
61
- return str(self.team)
62
-
63
- ```
64
-
65
-
66
-
67
- ```
68
-
69
- /views.py
70
-
71
-
72
-
73
- def teamlist(request):
74
-
75
- object_team = Department.objects.all()
76
-
77
- print(object_team)
78
-
79
- return render(
80
-
81
- request,
82
-
83
- 'teamlist.html',
84
-
85
- {'object_team':object_team}
86
-
87
- )
88
-
89
- def linelist(request):
90
-
91
- object_line = Department.objects.all()
92
-
93
- #print(object_line)
94
-
95
- print("team_name:",request.GET.get('test_team'))
96
-
97
- return render(
98
-
99
- request,
100
-
101
- 'linelist.html', {'object_line': object_line}
102
-
103
- )
104
-
105
103
  ```
106
104
 
107
105
 

10

コードを減らしています。

2021/09/29 07:42

投稿

art35
art35

スコア13

test CHANGED
File without changes
test CHANGED
@@ -30,112 +30,78 @@
30
30
 
31
31
 
32
32
 
33
- class Line(models.Model):
33
+ class Department(models.Model):
34
-
34
+
35
- """新規ラインの登録"""
35
+ """所属部署の登録"""
36
+
37
+
38
+
36
-
39
+ team_id = models.IntegerField(verbose_name='チームID')
40
+
37
-
41
+ team = models.CharField(max_length=50, unique=True, blank=True, verbose_name ='チーム')
38
-
42
+
39
- line = models.CharField(
43
+ line = models.ManyToManyField(
40
-
41
- max_length=50,
44
+
42
-
43
- unique=True,
44
-
45
- blank=True,
45
+ Line,
46
-
46
+
47
- verbose_name ='ライン')
47
+ verbose_name ='ライン',
48
+
49
+ blank=True
50
+
51
+ )
52
+
53
+ def get_lines(self):
54
+
55
+ return ",".join([str(p) for p in self.line.all()])
56
+
57
+
48
58
 
49
59
  def __str__(self):
50
60
 
51
- return str(self.line)
61
+ return str(self.team)
62
+
52
-
63
+ ```
64
+
65
+
66
+
53
-
67
+ ```
54
-
55
-
56
-
68
+
57
- class Meta:
69
+ /views.py
58
-
70
+
71
+
72
+
59
- verbose_name = 'Line'
73
+ def teamlist(request):
60
-
61
- verbose_name_plural = _('新規ライン登録')
74
+
62
-
63
-
64
-
65
-
66
-
67
- class Department(models.Model):
75
+ object_team = Department.objects.all()
68
-
69
- """所属部署の登録"""
76
+
70
-
71
-
72
-
73
- team_id = models.IntegerField(verbose_name='チームID')
74
-
75
- team = models.CharField(max_length=50, unique=True, blank=True, verbose_name ='チーム')
76
-
77
- line = models.ManyToManyField(
77
+ print(object_team)
78
+
78
-
79
+ return render(
80
+
79
- Line,
81
+ request,
80
-
82
+
81
- verbose_name ='ライン',
83
+ 'teamlist.html',
82
-
84
+
83
- blank=True
85
+ {'object_team':object_team}
84
86
 
85
87
  )
86
88
 
87
- def get_lines(self):
88
-
89
- return ",".join([str(p) for p in self.line.all()])
90
-
91
-
92
-
93
- def __str__(self):
94
-
95
- return str(self.team)
96
-
97
- ```
98
-
99
-
100
-
101
- ```
102
-
103
- /views.py
104
-
105
-
106
-
107
- def teamlist(request):
89
+ def linelist(request):
108
-
90
+
109
- object_team = Department.objects.all()
91
+ object_line = Department.objects.all()
110
-
92
+
111
- print(object_team)
93
+ #print(object_line)
94
+
95
+ print("team_name:",request.GET.get('test_team'))
112
96
 
113
97
  return render(
114
98
 
115
- request,
99
+ request,
116
-
117
- 'teamlist.html',
100
+
118
-
119
- {'object_team':object_team}
101
+ 'linelist.html', {'object_line': object_line}
120
102
 
121
103
  )
122
104
 
123
- def linelist(request):
124
-
125
- object_line = Department.objects.all()
126
-
127
- #print(object_line)
128
-
129
- print("team_name:",request.GET.get('test_team'))
130
-
131
- return render(
132
-
133
- request,
134
-
135
- 'linelist.html', {'object_line': object_line}
136
-
137
- )
138
-
139
105
  ```
140
106
 
141
107
 
@@ -152,14 +118,6 @@
152
118
 
153
119
  path('teamlist/', teamlist, name='team_l'),
154
120
 
155
- path('login', loginfunc, name='login'),
156
-
157
- path('logout/', logoutfunc, name='logout'),
158
-
159
- path('linedetail/<int:pk>', linedetail, name='line_d'),
160
-
161
- path('teamdetail/<int:pk>', teamdetail, name='team_d'),
162
-
163
121
  ]
164
122
 
165
123
  ```
@@ -172,25 +130,49 @@
172
130
 
173
131
 
174
132
 
175
- {% extends 'base_team.html' %}
176
-
177
-
178
-
179
-
180
-
181
- {% block header %}
133
+ {% block content %}
134
+
135
+
136
+
182
-
137
+ <div class="container">
138
+
183
-
139
+ {% for item in object_team %}
184
-
140
+
185
- <div class="alert alert-primary" role="alert">
141
+ <div class="alert alert-success" role="alert">
142
+
186
-
143
+ <p>チーム:<form action="{% url 'line_l' %}" method="get" autocomplete="off">
144
+
145
+ {% csrf_token %}
146
+
147
+ {{ form }}
148
+
149
+ {{ item.team }}
150
+
151
+ <input type="hidden" name="test_team" id="test_team" value="{{ item.team }}">
152
+
153
+ <button type="submit">選択</button>
154
+
187
- <h3>チームとライン選択</h3>
155
+ </form></p>
156
+
157
+ </div>
158
+
159
+ {% endfor %}
188
160
 
189
161
  </div>
190
162
 
191
163
 
192
164
 
193
- {% endblock header %}
165
+ {% endblock content %}
166
+
167
+
168
+
169
+ ```
170
+
171
+
172
+
173
+ ```
174
+
175
+ linelist.html
194
176
 
195
177
 
196
178
 
@@ -200,23 +182,29 @@
200
182
 
201
183
  <div class="container">
202
184
 
203
- {% for item in object_team %}
185
+ {% for item in object_line %}
186
+
204
-
187
+ <div class="alert alert-priority" role="alert">
188
+
189
+ <p>チーム:{{ item.team }}</p>
190
+
205
- <div class="alert alert-success" role="alert">
191
+ <div class="alert alert-success" role="alert">
206
-
192
+
207
- <p>チーム:<form action="{% url 'line_l' %}" method="get" autocomplete="off">
193
+ <p>ライン:<form action="{% url 'cs_l' %}" method="get" autocomplete="off">
208
-
194
+
209
- {% csrf_token %}
195
+ {% csrf_token %}
210
-
196
+
211
- {{ form }}
197
+ {{ form }}
212
-
198
+
213
- {{ item.team }}
199
+ {{ item.get_lines }}
214
-
200
+
215
- <input type="hidden" name="test_team" id="test_team" value="{{ item.team }}">
201
+ <input type="hidden" name="test_line" id="test_line" value="{{ item.get_lines }}">
216
-
202
+
217
- <button type="submit">選択</button>
203
+ <button type="submit">選択</button>
218
-
204
+
219
- </form></p>
205
+ </form></p>
206
+
207
+ </div>
220
208
 
221
209
  </div>
222
210
 
@@ -224,76 +212,6 @@
224
212
 
225
213
  </div>
226
214
 
227
-
228
-
229
215
  {% endblock content %}
230
216
 
231
-
232
-
233
- ```
217
+ ```
234
-
235
-
236
-
237
- ```
238
-
239
- linelist.html
240
-
241
-
242
-
243
- {% extends 'base_team.html' %}
244
-
245
-
246
-
247
-
248
-
249
- {% block header %}
250
-
251
- <div class="alert alert-primary" role="alert">
252
-
253
- <h3>チームとライン選択</h3>
254
-
255
- </div>
256
-
257
- {% endblock header %}
258
-
259
-
260
-
261
- {% block content %}
262
-
263
-
264
-
265
- <div class="container">
266
-
267
- {% for item in object_line %}
268
-
269
- <div class="alert alert-priority" role="alert">
270
-
271
- <p>チーム:{{ item.team }}</p>
272
-
273
- <div class="alert alert-success" role="alert">
274
-
275
- <p>ライン:<form action="{% url 'cs_l' %}" method="get" autocomplete="off">
276
-
277
- {% csrf_token %}
278
-
279
- {{ form }}
280
-
281
- {{ item.get_lines }}
282
-
283
- <input type="hidden" name="test_line" id="test_line" value="{{ item.get_lines }}">
284
-
285
- <button type="submit">選択</button>
286
-
287
- </form></p>
288
-
289
- </div>
290
-
291
- </div>
292
-
293
- {% endfor %}
294
-
295
- </div>
296
-
297
- {% endblock content %}
298
-
299
- ```

9

viewsとtemplateを変更しました。

2021/09/29 07:20

投稿

art35
art35

スコア13

test CHANGED
File without changes
test CHANGED
@@ -106,7 +106,9 @@
106
106
 
107
107
  def teamlist(request):
108
108
 
109
- objects_team = Department.objects.all()
109
+ object_team = Department.objects.all()
110
+
111
+ print(object_team)
110
112
 
111
113
  return render(
112
114
 
@@ -114,17 +116,17 @@
114
116
 
115
117
  'teamlist.html',
116
118
 
117
- {'objects_team':objects_team}
119
+ {'object_team':object_team}
118
120
 
119
121
  )
120
122
 
121
-
122
-
123
123
  def linelist(request):
124
124
 
125
125
  object_line = Department.objects.all()
126
126
 
127
- print(object_line)
127
+ #print(object_line)
128
+
129
+ print("team_name:",request.GET.get('test_team'))
128
130
 
129
131
  return render(
130
132
 
@@ -182,7 +184,7 @@
182
184
 
183
185
  <div class="alert alert-primary" role="alert">
184
186
 
185
- <h3>チーム選択</h3>
187
+ <h3>チームとライン選択</h3>
186
188
 
187
189
  </div>
188
190
 
@@ -198,15 +200,27 @@
198
200
 
199
201
  <div class="container">
200
202
 
201
- {% for item in objects_team %}
203
+ {% for item in object_team %}
202
-
204
+
203
- <div class="alert alert-success" role="alert">
205
+ <div class="alert alert-success" role="alert">
204
-
206
+
205
- <p>チーム:<a href="{% url 'line_l' %}" >{{ item.team }}</a></p>
207
+ <p>チーム:<form action="{% url 'line_l' %}" method="get" autocomplete="off">
208
+
206
-
209
+ {% csrf_token %}
210
+
211
+ {{ form }}
212
+
213
+ {{ item.team }}
214
+
215
+ <input type="hidden" name="test_team" id="test_team" value="{{ item.team }}">
216
+
217
+ <button type="submit">選択</button>
218
+
219
+ </form></p>
220
+
207
- </div>
221
+ </div>
208
-
222
+
209
- {% endfor %}
223
+ {% endfor %}
210
224
 
211
225
  </div>
212
226
 
@@ -214,6 +228,8 @@
214
228
 
215
229
  {% endblock content %}
216
230
 
231
+
232
+
217
233
  ```
218
234
 
219
235
 
@@ -244,6 +260,8 @@
244
260
 
245
261
  {% block content %}
246
262
 
263
+
264
+
247
265
  <div class="container">
248
266
 
249
267
  {% for item in object_line %}
@@ -262,16 +280,12 @@
262
280
 
263
281
  {{ item.get_lines }}
264
282
 
265
- <input type="hidden" id="line_name" value={{ item.get_lines }}>
283
+ <input type="hidden" name="test_line" id="test_line" value="{{ item.get_lines }}">
266
-
267
- <input type="text" id={{ item.get_lines }} value={{ item.get_lines }}>
268
284
 
269
285
  <button type="submit">選択</button>
270
286
 
271
287
  </form></p>
272
288
 
273
-
274
-
275
289
  </div>
276
290
 
277
291
  </div>

8

タイトルの変更

2021/09/28 00:13

投稿

art35
art35

スコア13

test CHANGED
@@ -1 +1 @@
1
- Django html上で選択した内容に応じて、のhtml選択した内容に紐づいた内容を反映したい
1
+ Django html上で選択した内容に応じて、遷移先のhtml選択した内容に紐づいた詳細を反映したい
test CHANGED
File without changes

7

タイトルの変更

2021/09/27 08:24

投稿

art35
art35

スコア13

test CHANGED
@@ -1 +1 @@
1
- Django データベースに登録したデータを、html上で選択画面として表示して次のhtmlにその詳細を反映したい
1
+ Django html上で選択した内容に応じ次のhtmlに選択した内容に紐づいた内容を反映したい
test CHANGED
File without changes

6

本文を変更しました。

2021/09/27 07:54

投稿

art35
art35

スコア13

test CHANGED
File without changes
test CHANGED
@@ -1,16 +1,18 @@
1
- 下のmodelからadmin管理画面で登録teamとlineを登録してあるとて、
1
+ 所属(仮にa,b,c)と所属に紐づいている場所(仮にa-1,a-2,b-1,c-1,c-2)を登録する以下のmodelを作成てhtmlで別々に2つも作成して表示たいです。
2
+
2
-
3
+ 1:所属表示、
4
+
5
+ 2:所属に紐づいた場所の表示
6
+
3
- htmlでteam選択をするhtmlがあり、teamと紐づいているline選択するhtmlに遷移したいのですが、
7
+ 1から2へ遷移させるときに選択した所属に紐づいている場所のみ表示させたいのですが、
4
-
5
- 選択したteamによって、teamに所属するlineだけを表示させるようにしたいです。
8
+
6
-
7
-
8
-
9
- 以下のviewsの内容をobject.filterにすばいいのかとも思いますが、
9
+ 所属している場所は変更さることもあり、a-3,b-2が増えることがあります
10
+
10
-
11
+ 最初からリストやchoiceで指定できない場合にどのようにコードを書けばよいでしょうか。
12
+
13
+
14
+
11
- わからないので今はobject.allにしています。
15
+ 今は一旦わからないのですべての所属の場所を全件取得しています。
12
-
13
-
14
16
 
15
17
  def linelist(request):
16
18
 

5

本文の訂正

2021/09/27 07:52

投稿

art35
art35

スコア13

test CHANGED
@@ -1 +1 @@
1
- Django データベースに登録されているデータを、html上で選択して次のhtmlにその内容を反映したい
1
+ Django データベースに登録したデータを、html上で選択画面として表示して次のhtmlにその詳細を反映したい
test CHANGED
@@ -1,8 +1,8 @@
1
+ 下のmodelからadmin管理画面で登録したteamとlineを登録してあるとして、
2
+
1
- team選択htmlがあ、そこからline選択をするhtmlに遷移したいのですが、
3
+ htmlでteam選択をするhtmlがあり、teamと紐づいいるline選択をするhtmlに遷移したいのですが、
2
-
4
+
3
- 選択したteamによって、teamに所属するlineだけを表示させるように
5
+ 選択したteamによって、teamに所属するlineだけを表示させるようにしたいです。
4
-
5
- line選択をするhtmlに表示する内容を変えたいのですがその方法がわかりません。
6
6
 
7
7
 
8
8
 

4

誤字修正

2021/09/27 04:52

投稿

art35
art35

スコア13

test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,6 @@
1
1
  teamの選択htmlがあって、そこからline選択をするhtmlに遷移したいのですが、
2
2
 
3
- 選択したteamによって、teamに所属するlineのないようだけを表示させるように、
3
+ 選択したteamによって、teamに所属するlineだけを表示させるように、
4
4
 
5
5
  line選択をするhtmlに表示する内容を変えたいのですがその方法がわかりません。
6
6
 

3

本文の訂正

2021/09/27 02:03

投稿

art35
art35

スコア13

test CHANGED
@@ -1 +1 @@
1
- Django データベースに保存される増減するデータをリストにして分けることはできなのか
1
+ Django データベースに登録されているデータを、html上で選択して次のhtmlその内容を反映
test CHANGED
@@ -1,146 +1,190 @@
1
- プログラミング初学者です。
2
-
3
- 添付2つのmodelがあったときに、ins_ledger,modelで登録したデータlist.htmlへ表示させたいです
1
+ team選択htmlがあっそこからline選択するhtmlに遷移したいですが、
2
+
4
-
3
+ 選択したteamによって、teamに所属するlineのないようだけを表示させるように、
4
+
5
+ line選択をするhtmlに表示する内容を変えたいのですがその方法がわかりません。
6
+
7
+
8
+
5
- 後、、teammodel=A、ins_ledgermodel=B呼びます
9
+ 下のviewsの内容をobject.filterにすればいいのかも思いますが、
6
-
7
-
8
-
10
+
9
- BForeignKeyでAのlineを紐付けてますが、lineで登録しているデータは所謂所属当たるのですが、今後も増えたり減ったりするのでいくつという一定数ではなく増減してしま、文字列も変更されます。
11
+ わからないので今はobject.allにしています。
12
+
13
+
14
+
10
-
15
+ def linelist(request):
11
-
12
-
16
+
13
- 増減してもlineで登録した同じ文字列のものだけをを1つのhtmlへ表示させたいときはどのようにすればよいでしょうか。
17
+ object_line = Department.objects.all()
14
-
18
+
19
+
20
+
15
- わかる方ご教授お願いします。
21
+ わかる方ご教授お願いします。
16
-
17
-
18
-
22
+
23
+
24
+
19
- ```python
25
+ ```
20
-
21
- team,
26
+
22
-
23
- models.py
27
+ /models.py
24
-
25
-
26
-
28
+
29
+
30
+
27
- class TeamModel(models.Model):
31
+ class Line(models.Model):
28
-
32
+
29
- team = models.CharField('チーム', max_length=50, unique=True, null=True, blank=True, default='')
33
+ """新規ラインの登録"""
34
+
35
+
36
+
37
+ line = models.CharField(
38
+
39
+ max_length=50,
40
+
41
+ unique=True,
42
+
43
+ blank=True,
44
+
45
+ verbose_name ='ライン')
30
46
 
31
47
  def __str__(self):
32
48
 
49
+ return str(self.line)
50
+
51
+
52
+
53
+
54
+
55
+ class Meta:
56
+
57
+ verbose_name = 'Line'
58
+
59
+ verbose_name_plural = _('新規ライン登録')
60
+
61
+
62
+
63
+
64
+
65
+ class Department(models.Model):
66
+
67
+ """所属部署の登録"""
68
+
69
+
70
+
71
+ team_id = models.IntegerField(verbose_name='チームID')
72
+
73
+ team = models.CharField(max_length=50, unique=True, blank=True, verbose_name ='チーム')
74
+
75
+ line = models.ManyToManyField(
76
+
77
+ Line,
78
+
79
+ verbose_name ='ライン',
80
+
81
+ blank=True
82
+
83
+ )
84
+
85
+ def get_lines(self):
86
+
87
+ return ",".join([str(p) for p in self.line.all()])
88
+
89
+
90
+
91
+ def __str__(self):
92
+
33
93
  return str(self.team)
34
94
 
35
- class Meta:
36
-
37
- verbose_name_plural="チーム登録"
38
-
39
-
40
-
41
-
42
-
43
- class LineModel(models.Model):
44
-
45
- line = models.CharField('ライン', max_length=50, unique=True, null=True, blank=True, default='')
46
-
47
- team = models.ForeignKey(TeamModel, on_delete=models.CASCADE, related_name='team1', verbose_name='チーム')
48
-
49
- def __str__(self):
50
-
51
- return str(self.line)
52
-
53
-
54
-
55
- class Meta:
56
-
57
- constraints = [
58
-
59
- models.UniqueConstraint(
60
-
61
- fields = ["team", "line"],
62
-
63
- name = "line_unique"
64
-
65
- ),
66
-
67
- ]
68
-
69
- verbose_name_plural="ライン登録"
70
-
71
- ```
72
-
73
-
74
-
75
- ```python
76
-
77
- ins_ledger,
78
-
79
- models.py
80
-
81
-
82
-
83
- class InsLedger(models.Model):
84
-
85
- measuring_ins_group = models.IntegerField(choices=MEASURING_INS_GROUP_CHOICES,default=1)
86
-
87
- measuring_tool = models.ForeignKey(Device, on_delete=models.CASCADE)
88
-
89
- ins_num = models.CharField(max_length=10)
90
-
91
- product_num = models.ForeignKey(Product_num, on_delete=models.CASCADE)
92
-
93
- line = models.ForeignKey(LineModel, on_delete=models.CASCADE, related_name='lines1')
94
-
95
-
96
-
97
- def __str__(self):
98
-
99
- return str(self.measuring_tool)
100
-
101
-
102
-
103
- class Meta:
104
-
105
- verbose_name = "台帳"
106
-
107
- ```
108
-
109
-
110
-
111
- ```python
112
-
113
- views.py
114
-
115
-
116
-
117
- def listfunc(request):
118
-
119
- object_il = InsLedger.objects.all()
120
-
121
- return render(request, 'list_il.html', {'object_il':object_il})
122
-
123
- ```
124
-
125
-
126
-
127
- ```python
128
-
129
- .html
130
-
131
-
132
-
133
- {% extends 'base.html' %}
95
+ ```
96
+
97
+
98
+
99
+ ```
100
+
101
+ /views.py
102
+
103
+
104
+
105
+ def teamlist(request):
106
+
107
+ objects_team = Department.objects.all()
108
+
109
+ return render(
110
+
111
+ request,
112
+
113
+ 'teamlist.html',
114
+
115
+ {'objects_team':objects_team}
116
+
117
+ )
118
+
119
+
120
+
121
+ def linelist(request):
122
+
123
+ object_line = Department.objects.all()
124
+
125
+ print(object_line)
126
+
127
+ return render(
128
+
129
+ request,
130
+
131
+ 'linelist.html', {'object_line': object_line}
132
+
133
+ )
134
+
135
+ ```
136
+
137
+
138
+
139
+ ```
140
+
141
+ /urls.py
142
+
143
+
144
+
145
+ urlpatterns = [
146
+
147
+ path('linelist/', linelist, name='line_l'),
148
+
149
+ path('teamlist/', teamlist, name='team_l'),
150
+
151
+ path('login', loginfunc, name='login'),
152
+
153
+ path('logout/', logoutfunc, name='logout'),
154
+
155
+ path('linedetail/<int:pk>', linedetail, name='line_d'),
156
+
157
+ path('teamdetail/<int:pk>', teamdetail, name='team_d'),
158
+
159
+ ]
160
+
161
+ ```
162
+
163
+
164
+
165
+ ```
166
+
167
+ teamlist.html
168
+
169
+
170
+
171
+ {% extends 'base_team.html' %}
172
+
173
+
134
174
 
135
175
 
136
176
 
137
177
  {% block header %}
138
178
 
179
+
180
+
139
181
  <div class="alert alert-primary" role="alert">
140
182
 
141
- <h3>台帳</h3>
183
+ <h3>チーム選択</h3>
142
-
184
+
143
- </div>
185
+ </div>
186
+
187
+
144
188
 
145
189
  {% endblock header %}
146
190
 
@@ -148,37 +192,91 @@
148
192
 
149
193
  {% block content %}
150
194
 
151
- {% if user.is_authenticated %}
195
+
152
196
 
153
197
  <div class="container">
154
198
 
155
- <a href="{% url 'create_il' %}" class="btn btn-info md-2" tabindex="-1" role= "button" aria-disabled="ture">新規作成</a>
156
-
157
- {% for item in object_il %}
199
+ {% for item in objects_team %}
158
-
200
+
159
- <div class="alert alert-success" role="alert">
201
+ <div class="alert alert-success" role="alert">
202
+
160
-
203
+ <p>チーム:<a href="{% url 'line_l' %}" >{{ item.team }}</a></p>
204
+
205
+ </div>
206
+
207
+ {% endfor %}
208
+
209
+ </div>
210
+
211
+
212
+
213
+ {% endblock content %}
214
+
215
+ ```
216
+
217
+
218
+
219
+ ```
220
+
221
+ linelist.html
222
+
223
+
224
+
225
+ {% extends 'base_team.html' %}
226
+
227
+
228
+
229
+
230
+
231
+ {% block header %}
232
+
161
- <p>測定具:{{ item.measuring_tool }}</p>
233
+ <div class="alert alert-primary" role="alert">
162
-
234
+
163
- <p>管理No.:{{ item.ins_num }}</p>
235
+ <h3>チームとライン選択</h3>
236
+
164
-
237
+ </div>
238
+
239
+ {% endblock header %}
240
+
241
+
242
+
243
+ {% block content %}
244
+
165
- <p>対象品番:{{ item.product_num }}</p>
245
+ <div class="container">
246
+
166
-
247
+ {% for item in object_line %}
248
+
249
+ <div class="alert alert-priority" role="alert">
250
+
167
- <p>ライン:{{ item.line }}</p>
251
+ <p>チーム:{{ item.team }}</p>
252
+
253
+ <div class="alert alert-success" role="alert">
254
+
255
+ <p>ライン:<form action="{% url 'cs_l' %}" method="get" autocomplete="off">
256
+
257
+ {% csrf_token %}
258
+
259
+ {{ form }}
260
+
261
+ {{ item.get_lines }}
262
+
263
+ <input type="hidden" id="line_name" value={{ item.get_lines }}>
264
+
265
+ <input type="text" id={{ item.get_lines }} value={{ item.get_lines }}>
266
+
267
+ <button type="submit">選択</button>
268
+
269
+ </form></p>
270
+
271
+
272
+
273
+ </div>
168
274
 
169
275
  </div>
170
276
 
171
277
  {% endfor %}
172
278
 
173
- <a href="{% url 'logout' %}">logout</a>
174
-
175
- </div>
279
+ </div>
176
-
177
- {% else %}
178
-
179
- please login
180
-
181
- {% endif %}
182
280
 
183
281
  {% endblock content %}
184
282
 

2

説明文の変更

2021/09/27 01:47

投稿

art35
art35

スコア13

test CHANGED
@@ -1 +1 @@
1
- Django dbの増減するデータをtemplateへ表示す
1
+ Django データベースに保存される増減するデータをリストにして分けことはできないのか
test CHANGED
@@ -2,11 +2,17 @@
2
2
 
3
3
  添付の2つのmodelがあったときに、ins_ledger,modelで登録したデータをlist.htmlへ表示させたいです。
4
4
 
5
- modelで登録しているlineのデータ毎で分けて表示させたいのですが、今の登録している5つのデータは今後も増えたり減ったりするので5ついう一定数ではなく増減してしい、文字列も変更されます。
5
+ 以後、、teammodel=A、ins_ledgermodel=B呼びます。
6
6
 
7
- 増減してもlineで登録した同じものだけを1つのhtmlへ表示させたいときはどのようにすればよいでしょうか。
8
7
 
8
+
9
+ Bの中でForeignKeyでAのlineを紐付けてますが、lineで登録しているデータは所謂所属に当たるのですが、今後も増えたり減ったりするのでいくつという一定数ではなく増減してしまい、文字列も変更されます。
10
+
11
+
12
+
13
+ 増減してもlineで登録した同じ文字列のものだけをを1つのhtmlへ表示させたいときはどのようにすればよいでしょうか。
14
+
9
- 今は一旦全件取得しています。わかる方ご教授お願い致します。
15
+ わかる方ご教授お願い致します。
10
16
 
11
17
 
12
18
 

1

タイトルの表現変更

2021/09/20 06:00

投稿

art35
art35

スコア13

test CHANGED
@@ -1 +1 @@
1
- Django 登録データが増減した時のtemplateへ表示方法
1
+ Django dbの増減するデータtemplateへ表示する
test CHANGED
File without changes