質問編集履歴

5

誤字

2020/11/24 08:49

投稿

kwmr8416
kwmr8416

スコア6

test CHANGED
@@ -1 +1 @@
1
- djangoでページング機能を実装した一覧表示の表示スピードを上げたい
1
+ Djangoでページング機能を実装したリストの表示スピードを上げたい
test CHANGED
File without changes

4

ごじ

2020/11/24 08:49

投稿

kwmr8416
kwmr8416

スコア6

test CHANGED
File without changes
test CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  この一覧表示はページングで7項目のレコード20件を1ページとして表示させていますが、
8
8
 
9
- 以下のように、
9
+ 以下のように、ブラウザで表示されるまでの時間として
10
10
 
11
11
  ```
12
12
 
@@ -36,7 +36,7 @@
36
36
 
37
37
 
38
38
 
39
- ローカルでCSVファイルの読み込みが100MBまでしかできておらず環境別で比較できない状況ではありますが、1GBのデータが入ったAWS上のデータベースに上記の2つのSQL文を直接実行し結果が返ってくるまでの時間を計測ました。
39
+ ローカルでCSVファイルの読み込みが100MBまでしかできておらず環境別で比較できない状況ではありますが、1GBのデータが入ったAWS上のデータベースに上記の2つのSQL文を直接実行し結果が返ってくるまでの時間を計測ました。
40
40
 
41
41
  ```
42
42
 

3

誤字

2020/11/24 07:33

投稿

kwmr8416
kwmr8416

スコア6

test CHANGED
File without changes
test CHANGED
@@ -42,13 +42,13 @@
42
42
 
43
43
  t2.micro→
44
44
 
45
- SELECT COUNT(*) AS "__count" FROM ~:17秒
45
+ SELECT COUNT(*) AS "__count" FROM 対象テーブル ~:17秒
46
46
 
47
47
  SELECT 対象項目,.... FROM 対象テーブル ~: 17秒
48
48
 
49
49
  t2.xlarge→
50
50
 
51
- SELECT COUNT(*) AS "__count" FROM ~:8秒
51
+ SELECT COUNT(*) AS "__count" FROM 対象テーブル ~:8秒
52
52
 
53
53
  SELECT 対象項目,.... FROM 対象テーブル ~: 1秒
54
54
 

2

誤字

2020/11/24 07:28

投稿

kwmr8416
kwmr8416

スコア6

test CHANGED
File without changes
test CHANGED
@@ -8,10 +8,14 @@
8
8
 
9
9
  以下のように、
10
10
 
11
+ ```
12
+
11
13
   t2.micro→50秒
12
14
 
13
15
   t2.xlarge→25秒
14
16
 
17
+ ```
18
+
15
19
  と、スペックを上げると約半分になりましたが、かなり遅いです(時間は大体です以下同様)。
16
20
 
17
21
 
@@ -34,6 +38,8 @@
34
38
 
35
39
  ローカルでCSVファイルの読み込みが100MBまでしかできておらず環境別で比較できない状況ではありますが、1GBのデータが入ったAWS上のデータベースに上記の2つのSQL文を直接実行し結果が返ってくるまでの時間を計測ました。
36
40
 
41
+ ```
42
+
37
43
  t2.micro→
38
44
 
39
45
  SELECT COUNT(*) AS "__count" FROM ~:17秒
@@ -46,7 +52,7 @@
46
52
 
47
53
  SELECT 対象項目,.... FROM 対象テーブル ~: 1秒
48
54
 
49
-
55
+ ```
50
56
 
51
57
  この結果と冒頭の一覧表示(ブラウザで表示)にかかった時間を差し引くとSQLの実行処理とは別に15秒ほど他の処理に時間がかかっているということになります。
52
58
 

1

追記、誤字

2020/11/24 06:54

投稿

kwmr8416
kwmr8416

スコア6

test CHANGED
File without changes
test CHANGED
@@ -28,7 +28,7 @@
28
28
 
29
29
  ```
30
30
 
31
- これは、最初のSELECT文のCOUNTメソッドでレコード件数を取得し、次のSELECT文で当該レコード20件分を読み込んでいます。ここでは表示項目(7項目)だけではなく全項目読み込んでおり、model.pyで記述したorderinが実行されています。
31
+ これは、最初のSELECT文のCOUNTメソッドでレコード件数を取得し、次のSELECT文で当該レコード20件分を読み込んでいます。ここでは表示項目(7項目)だけではなく全項目読み込んでおり、models.pyで記述したソートが実行されています。
32
32
 
33
33
 
34
34
 
@@ -164,6 +164,66 @@
164
164
 
165
165
  ```
166
166
 
167
+ models.py
168
+
169
+ ```
170
+
171
+ from django.db import models
172
+
173
+
174
+
175
+ # 日報テーブル
176
+
177
+ class nippotable(models.Model):
178
+
179
+ #actcd = models.IntegerField('アカウントコード') /外部キー
180
+
181
+ workday = models.DateField('作業日')
182
+
183
+ serialno= models.CharField('製番(製造番号)', max_length=20)
184
+
185
+ productname = models.CharField('製品品名(仕事名)', max_length=50)
186
+
187
+ productno = models.CharField('製品NO.', max_length=3)
188
+
189
+ workcontents = models.CharField('工程(業務)名', max_length=50)
190
+
191
+ worktypecd = models.IntegerField('工程(業務種別)コード')
192
+
193
+ starttime = models.DateTimeField('開始時間')
194
+
195
+ endtime = models.DateTimeField('終了時間')
196
+
197
+ biko = models.CharField('備考', max_length=50)
198
+
199
+ createday = models.DateField('作成日')
200
+
201
+ createname = models.CharField('更新者', max_length=20)
202
+
203
+ updatename = models.CharField('作成者', max_length=20)
204
+
205
+ draftflg = models.BooleanField('下書きフラグ')
206
+
207
+ updateflg = models.BooleanField('更新フラグ')
208
+
209
+ approvalflg = models.BooleanField('承認フラグ')
210
+
211
+
212
+
213
+ class Meta:
214
+
215
+ ordering = ['workday', 'starttime', 'endtime', 'updatename']
216
+
217
+
218
+
219
+ def __str__(self):
220
+
221
+ return self.workday
222
+
223
+ ```
224
+
225
+
226
+
167
227
  ap:Django
168
228
 
169
229
  db:PostgreSQL