答えを見つけやすいと思ったものを見つけようとしています。プロジェクトで django-taggit を使用していますが、タグが選択されたときにオブジェクトのリストを返したいだけです。私はこれを試しました:
django-taggit のリスト ビューと詳細ビューを作成するにはどうすればよいですか?
しかし、私はそれを機能させることができません。空白のページをレンダリングするだけです。問題はテンプレート コードにあると思います。たぶん、誰かが私をその方向に向けることができます。どんな助けでも大歓迎です..どうもありがとう。
これが私のコードです:
models.py
from taggit.managers import TaggableManager
from django.template.defaultfilters import slugify
from ckeditor.fields import RichTextField
from taggit.models import TaggedItemBase
class Tagged(TaggedItemBase):
content_object = models.ForeignKey('Shows')
class Shows(models.Model):
title = models.CharField(max_length=40)
slug = models.SlugField(null=True, blank=True, unique=True)
tags = TaggableManager(through=Tagged)
hosts = models.ManyToManyField('Host', blank=True, null=True)
featured = models.BooleanField(default=False)
thumbnail = FilerImageField(related_name="thumbnail", help_text="Image should be: 550 X 350.")
playing_next = models.DateTimeField(null=True, blank=True)
description = RichTextField()
ビュー.py:
class TaggedList(ListView):
queryset = Shows.objects.all()
paginate_by = 10
template_name = "tagged.html"
def get_queryset(self):
return Shows.objects.filter(tags__name__in=[self.kwargs['tag']])
urls.py:
urlpatterns = patterns('radio.views',
url(r'^$', 'main', name='app_main'),
url(r'^(?P<slug>[^\.]+)/detail/$', 'detail_view', name='detailsview'),
url(r'^(?P<tag>\w+)/$', TaggedList.as_view()),
url(r'^tagged/(?P<tag>\w+)/$', TaggedList.as_view())
)