質問編集履歴

8

不要部分の削除

2017/02/11 17:43

投稿

PYPP
PYPP

スコア51

test CHANGED
File without changes
test CHANGED
@@ -40,85 +40,9 @@
40
40
 
41
41
  ###該当のソースコード
42
42
 
43
- post_edit.html
44
-
45
- ```ここに言語を入力
46
-
47
- {% extends 'posts/base.html' %}
48
-
49
- {% block content %}
50
-
51
- <h1>New post</h1>
52
-
53
- <form method="POST" class="post-form">{% csrf_token %}
54
-
55
- {{ form.as_p }}
56
-
57
- <button type="submit" class="save btn btn-default">Save</button>
58
-
59
- </form>
60
-
61
- {% endblock %}
62
-
63
- ```
64
-
65
43
  views.py
66
44
 
67
45
  ```ここに言語を入力
68
-
69
- from django.shortcuts import render, get_object_or_404, redirect
70
-
71
- from django.utils import timezone
72
-
73
- from .models import Post
74
-
75
- from .forms import PostForm
76
-
77
-
78
-
79
-
80
-
81
- # Create your views here.
82
-
83
- def post_list(request):
84
-
85
- posts = Post.objects.filter(published_date__lte=timezone.now()).order_by('published_date')
86
-
87
- return render(request, 'posts/post_list.html', {'posts': posts})
88
-
89
-
90
-
91
- def post_detail(request, pk):
92
-
93
- post = get_object_or_404(Post, pk=pk)
94
-
95
- return render(request, 'posts/post_detail.html', {'post': post})
96
-
97
-
98
-
99
- def post_new(request):
100
-
101
- if request.method == "POST":
102
-
103
- form = PostForm(request.POST)
104
-
105
- if form.is_valid():
106
-
107
- post = form.save(commit=False)
108
-
109
- post.author = request.user
110
-
111
- post.save()
112
-
113
- return redirect('posts.views.post_detail', pk=post.pk)
114
-
115
- else:
116
-
117
- form = PostForm()
118
-
119
- return render(request, 'posts/post_edit.html', {'form': form})
120
-
121
-
122
46
 
123
47
  def post_edit(request, pk):
124
48
 
@@ -145,167 +69,3 @@
145
69
  return render(request, 'posts/post_edit.html', {'form': form})
146
70
 
147
71
  ```
148
-
149
- base.html
150
-
151
- ```ここに言語を入力
152
-
153
- {% load staticfiles %}
154
-
155
-
156
-
157
- <html>
158
-
159
- <head>
160
-
161
- <title>Blog</title>
162
-
163
- <link href="http://fonts.googleapis.com/css?family=Lobster&subset=latin,latin-ext" rel="stylesheet" type="text/css">
164
-
165
- </head>
166
-
167
- <body>
168
-
169
- <div class="page-header">
170
-
171
- <h1><a href="/">Blog</a></h1>
172
-
173
- <input type="button" value="投稿" onClick="location.href='/post/new';">
174
-
175
- </div>
176
-
177
-
178
-
179
- <div class="content container">
180
-
181
- <div class="row">
182
-
183
- <div class="col-md-8">
184
-
185
- {% block content %}
186
-
187
- {% endblock %}
188
-
189
- </div>
190
-
191
- </div>
192
-
193
- </div>
194
-
195
- </body>
196
-
197
- </html>
198
-
199
- ```
200
-
201
- post_detail.html
202
-
203
- ```
204
-
205
- {% extends 'posts/base.html' %}
206
-
207
-
208
-
209
- {% block content %}
210
-
211
- <div class="post">
212
-
213
- {% if post.published_date %}
214
-
215
- <div class="date">
216
-
217
- {{ post.published_date }}
218
-
219
- </div>
220
-
221
- {% endif %}
222
-
223
- <input type="button" value="編集" onClick="location.href='/post/{{ post.id }}/edit';">
224
-
225
- <h1>{{ post.title }}</h1>
226
-
227
- <p>{{ post.text|linebreaks }}</p>
228
-
229
- </div>
230
-
231
- {% endblock %}
232
-
233
-
234
-
235
- ```
236
-
237
- ###試したこと
238
-
239
- views.pyの下記のように変えところ、編集ボタンを押しても編集画面へ遷移できなくなってしまいました。
240
-
241
- ![![イメージ説明](fdebcbde11212122bde48582ba34af96.png)](8c58329b07f149e0afa55ac3534bb4bc.png)
242
-
243
- ```ここに言語を入力
244
-
245
- def post_detail(request, pk):
246
-
247
- post = get_object_or_404(Post, pk=pk)
248
-
249
- return render(request, 'posts/post_detail.html', {'post': post})
250
-
251
-
252
-
253
- def post_edit(request, pk):
254
-
255
- post = get_object_or_404(Post, pk=pk)
256
-
257
- if request.method == "POST":
258
-
259
- form = PostForm(request.POST, instance=post)
260
-
261
- if form.is_valid():
262
-
263
- post = form.save(commit=False)
264
-
265
- post.author = request.user
266
-
267
- post.save()
268
-
269
- return redirect('posts.views.post_detail', pk=post.pk)
270
-
271
- else:
272
-
273
- form = PostForm(instance=post)
274
-
275
- return render(request, 'posts/post_edit.html', {'form': form})
276
-
277
- ```
278
-
279
- ```ここに言語を入力
280
-
281
- def post_detail(request, pk):
282
-
283
- post = get_object_or_404(Post, pk=pk)
284
-
285
- return render(request, 'posts/post_detail.html', {'post': post})
286
-
287
- def post_edit(request, pk):
288
-
289
- post = get_object_or_404(Post, pk=pk)
290
-
291
- if request.method == "POST":
292
-
293
- form = PostForm(request.POST, instance=post)
294
-
295
- if form.is_valid():
296
-
297
- post = form.save(commit=False)
298
-
299
- post.author = request.user
300
-
301
- post.save()
302
-
303
- return redirect('posts.views.post_detail', pk=post.pk)
304
-
305
- else:
306
-
307
- form = PostForm(instance=post)
308
-
309
- return redirect('/post/' + str(post.pk) + '/')
310
-
311
- ```

7

追記

2017/02/11 17:43

投稿

PYPP
PYPP

スコア51

test CHANGED
File without changes
test CHANGED
@@ -198,7 +198,41 @@
198
198
 
199
199
  ```
200
200
 
201
-
201
+ post_detail.html
202
+
203
+ ```
204
+
205
+ {% extends 'posts/base.html' %}
206
+
207
+
208
+
209
+ {% block content %}
210
+
211
+ <div class="post">
212
+
213
+ {% if post.published_date %}
214
+
215
+ <div class="date">
216
+
217
+ {{ post.published_date }}
218
+
219
+ </div>
220
+
221
+ {% endif %}
222
+
223
+ <input type="button" value="編集" onClick="location.href='/post/{{ post.id }}/edit';">
224
+
225
+ <h1>{{ post.title }}</h1>
226
+
227
+ <p>{{ post.text|linebreaks }}</p>
228
+
229
+ </div>
230
+
231
+ {% endblock %}
232
+
233
+
234
+
235
+ ```
202
236
 
203
237
  ###試したこと
204
238
 
@@ -208,6 +242,14 @@
208
242
 
209
243
  ```ここに言語を入力
210
244
 
245
+ def post_detail(request, pk):
246
+
247
+ post = get_object_or_404(Post, pk=pk)
248
+
249
+ return render(request, 'posts/post_detail.html', {'post': post})
250
+
251
+
252
+
211
253
  def post_edit(request, pk):
212
254
 
213
255
  post = get_object_or_404(Post, pk=pk)
@@ -236,6 +278,12 @@
236
278
 
237
279
  ```ここに言語を入力
238
280
 
281
+ def post_detail(request, pk):
282
+
283
+ post = get_object_or_404(Post, pk=pk)
284
+
285
+ return render(request, 'posts/post_detail.html', {'post': post})
286
+
239
287
  def post_edit(request, pk):
240
288
 
241
289
  post = get_object_or_404(Post, pk=pk)

6

追記

2017/02/09 08:20

投稿

PYPP
PYPP

スコア51

test CHANGED
File without changes
test CHANGED
@@ -208,12 +208,56 @@
208
208
 
209
209
  ```ここに言語を入力
210
210
 
211
+ def post_edit(request, pk):
212
+
213
+ post = get_object_or_404(Post, pk=pk)
214
+
215
+ if request.method == "POST":
216
+
217
+ form = PostForm(request.POST, instance=post)
218
+
219
+ if form.is_valid():
220
+
221
+ post = form.save(commit=False)
222
+
223
+ post.author = request.user
224
+
225
+ post.save()
226
+
227
+ return redirect('posts.views.post_detail', pk=post.pk)
228
+
229
+ else:
230
+
231
+ form = PostForm(instance=post)
232
+
211
- return render(request, 'posts/post_edit.html', {'form': form})
233
+ return render(request, 'posts/post_edit.html', {'form': form})
212
-
234
+
213
- ```
235
+ ```
214
-
236
+
215
- ```ここに言語を入力
237
+ ```ここに言語を入力
238
+
216
-
239
+ def post_edit(request, pk):
240
+
241
+ post = get_object_or_404(Post, pk=pk)
242
+
243
+ if request.method == "POST":
244
+
245
+ form = PostForm(request.POST, instance=post)
246
+
247
+ if form.is_valid():
248
+
249
+ post = form.save(commit=False)
250
+
251
+ post.author = request.user
252
+
253
+ post.save()
254
+
255
+ return redirect('posts.views.post_detail', pk=post.pk)
256
+
257
+ else:
258
+
259
+ form = PostForm(instance=post)
260
+
217
- return redirect('/post/' + str(post.pk) + '/')
261
+ return redirect('/post/' + str(post.pk) + '/')
218
-
262
+
219
- ```
263
+ ```

5

試したことの追記

2017/02/09 07:51

投稿

PYPP
PYPP

スコア51

test CHANGED
File without changes
test CHANGED
@@ -197,3 +197,23 @@
197
197
  </html>
198
198
 
199
199
  ```
200
+
201
+
202
+
203
+ ###試したこと
204
+
205
+ views.pyの下記のように変えところ、編集ボタンを押しても編集画面へ遷移できなくなってしまいました。
206
+
207
+ ![![イメージ説明](fdebcbde11212122bde48582ba34af96.png)](8c58329b07f149e0afa55ac3534bb4bc.png)
208
+
209
+ ```ここに言語を入力
210
+
211
+ return render(request, 'posts/post_edit.html', {'form': form})
212
+
213
+ ```
214
+
215
+ ```ここに言語を入力
216
+
217
+ return redirect('/post/' + str(post.pk) + '/')
218
+
219
+ ```

4

エラーメッセージの追記

2017/02/09 07:49

投稿

PYPP
PYPP

スコア51

test CHANGED
File without changes
test CHANGED
@@ -8,7 +8,33 @@
8
8
 
9
9
  ###発生している問題・エラーメッセージ
10
10
 
11
+ ```ここに言語を入力
12
+
13
+ Page not found (404)
14
+
15
+ Request Method: GET
16
+
17
+ Request URL: http://127.0.0.1:8000/post/21/edit/posts.views.post_detail
18
+
19
+
20
+
21
+ Using the URLconf defined in blog.urls, Django tried these URL patterns, in this order:
22
+
23
+ ^$
24
+
25
+ ^post/(?P<pk>[0-9]+)/$
26
+
27
+ ^post/new/$ [name='post_new']
28
+
11
- ![イメージ説明](34a0f9dd0365259b5094e6c57be91864.png)
29
+ ^post/(?P<pk>[0-9]+)/edit/$
30
+
31
+ ^admin/
32
+
33
+ The current URL, post/21/edit/posts.views.post_detail, didn't match any of these.
34
+
35
+ You're seeing this error because you have DEBUG = True in your Django settings file. Change that to False, and Django will display a standard 404 page.
36
+
37
+ ```
12
38
 
13
39
 
14
40
 

3

誤字の修正

2017/02/09 05:11

投稿

PYPP
PYPP

スコア51

test CHANGED
File without changes
test CHANGED
@@ -10,9 +10,11 @@
10
10
 
11
11
  ![イメージ説明](34a0f9dd0365259b5094e6c57be91864.png)
12
12
 
13
- post_edit.html
13
+
14
14
 
15
15
  ###該当のソースコード
16
+
17
+ post_edit.html
16
18
 
17
19
  ```ここに言語を入力
18
20
 

2

誤字の修正

2017/02/08 14:06

投稿

PYPP
PYPP

スコア51

test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,6 @@
1
1
  ###前提・実現したいこと
2
2
 
3
- DjangoGirlsというチュートリアルに従って、Pythonのdjangoを使いblogを作成しようとしています。そこで、ブログの投稿ページは作成し、データをデータベースに保存することはできたものの、次の画面に遷移することができずエラーが出てしまいました。
3
+ DjangoGirlsというチュートリアルに従って、PythonのDjangoを使いblogを作成しようとしています。そこで、ブログの投稿ページは作成し、データをデータベースに保存することはできたものの、次の画面に遷移することができずエラーが出てしまいました。
4
4
 
5
5
  ■ [参照ページ](https://djangogirlsjapan.gitbooks.io/workshop_tutorialjp/content/django_forms/)
6
6
 

1

問題点の修正

2017/02/08 12:07

投稿

PYPP
PYPP

スコア51

test CHANGED
@@ -1 +1 @@
1
- データの保存方法
1
+ saveボンから画面遷移
test CHANGED
@@ -1,6 +1,6 @@
1
1
  ###前提・実現したいこと
2
2
 
3
- DjangoGirlsというチュートリアルに従って、Pythonのdjangoを使いblogを作成しようとしています。そこで、ブログの投稿ページは作成できたものの、投稿を保存しようとするとエラーが出てしまいました。
3
+ DjangoGirlsというチュートリアルに従って、Pythonのdjangoを使いblogを作成しようとしています。そこで、ブログの投稿ページは作成し、データをデータベースに保存することはできたものの、次の画面に遷移するができずエラーが出てしまいました。
4
4
 
5
5
  ■ [参照ページ](https://djangogirlsjapan.gitbooks.io/workshop_tutorialjp/content/django_forms/)
6
6