質問編集履歴
1
コードの追加
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
DjangoCMSであるwagtailを使用して、1つのアプリを開発しています。その中でブログも追加し、そのブログに対してカテゴリー機能を実装したいです。現在、すでに実装はされていおり。管理者画面のスニペットからカテゴリーの登録、カテゴリーの表示、適切なクエリの表示までできています。しかし、そのカテゴリーを押すとしっかりとクエリに反映されるのですが、カテゴリー分けされたブログ記事は表示されません。これを直したいです。
|
|
2
2
|
|
|
3
|
+
追記:
|
|
4
|
+
じぶんで再考しコードを書き換えました。
|
|
5
|
+
```
|
|
6
|
+
def get_context(self, request, *args, **kwargs):
|
|
7
|
+
"""Adding custom stuff to our context."""
|
|
8
|
+
context = super().get_context(request, *args, **kwargs)
|
|
9
|
+
context["categories"] = BlogCategory.objects.all()
|
|
10
|
+
category = BlogCategory.objects.get(slug=slug)
|
|
11
|
+
# もしカテゴリーの指定があればカテゴリーと紐づいた記事のみ表示
|
|
12
|
+
if category:
|
|
13
|
+
context["posts"] = BlogDetailPage.objects.live().public().filter(categories__in=[category])
|
|
14
|
+
# もしカテゴリー指定がなければ→すべての記事を表示
|
|
15
|
+
else:
|
|
16
|
+
context["posts"] = BlogDetailPage.objects.live().public()
|
|
17
|
+
return context
|
|
18
|
+
```
|
|
19
|
+
エラーとしてslugが定義されていませんと表示されます。defないで再定義する必要があるのでしょうか?
|
|
20
|
+
|
|
3
21
|
以下のコードが原因となるものです。
|
|
4
22
|
|
|
5
23
|
```python
|