Как отфильтровать значение с категорией на странице шаблона детализации в django? - PullRequest
0 голосов
/ 20 апреля 2020

У меня есть категория видео в категориях, я хочу отфильтровать значение категории видео на странице подробностей, например, если я нажму на значение категории видео, тогда я хочу этот код {% video object.video as my_video %}{% video my_video 'medium' %}{% endvideo %} на странице подробностей. если я щелкну значения других категорий, то я хочу {% else %} часть, как я могу это сделать?

model.py

class Categoryies(models.Model):
    name = models.CharField(max_length=100)

class Article(models.Model):
    title = models.CharField(max_length=100)
    author = models.ForeignKey(
        User, on_delete=models.CASCADE)
    thumbnail = models.ImageField(default='def.jpg',
                                  upload_to=article_path)
    video = EmbedVideoField(blank=True, null=True)
    timestamp = models.DateTimeField(auto_now_add=True)
    content = RichTextUploadingField(blank=True)
    category = models.ManyToManyField(Categoryies)


    def get_absolute_url(self):
        return reverse('news-detail', kwargs={'pk': self.pk})

views.py

def NewsDetail(request, pk):
    vid = Article.objects.filter(category__exact='5')
    videos = get_object_or_404(vid, pk=pk)

    obj = get_object_or_404(Article, pk=pk)

    context = {
        'videos': videos,
        'object': obj,
    }
    return render(request, 'news/detail.html', context)

деталь. html

{% if videos %}

    {% video object.video as my_video %}
    {% video my_video 'medium' %}
    {% endvideo %}

{% else %}


    <figure class="social-icon">
        <img src="{{ object.thumbnail.url }}" />
    </figure>
    <h2>{{ object.title }}</h2>
    <ul>
        {{ object.author.username }}
        {{ object.timestamp }}
        {% for cat in object.category.all %}
        {{ cat }}
        {% endfor %}
    </ul>
    {{ object.content|safe }}

{% endif %}

...