• Не понятний ответ при запросе Djnago?

    @stry3
    Full-stack developer
    1. Пока читал вопрос, пять раз сломал язык и трижды – глаза.
    2. Пожалуйста, попробуйте PHP. В Python программисты, которые не умеют грамотно писать на родном языке, не выживают. Или попробуйте сформулировать свой вопрос на любом другом (включая корейский). Уверен, Вам помогут охотнее.
    3. Данный код, вероятно, будет работать вот так:
    # views.py
    liked_post_ids = UserLikes.objects.filter(user=request.user).values_list('id', flat=True)
    
    # template.html
    {% if post.id in liked_posts_ids %}
        This post was already liked.
    {% else %}
        You can like this post.
    {% endif %}

    4. Ваша модель UserLikes (а по guideline всё-таки корректнее её назвать UserLike) – ни что иное, как ManyToMany между моделью Post и User. Следовательно, правильнее сделать так:
    # models.py
    from django.contrib.auth.models import User
    from django.db import models
    
    class Post(models.Model):
        user = models.ManyToManyField(User)
        slug = models.SlugField()


    Другой вариант через два ForeignKey (тот же ManyToMany, только с "ручной" таблицей). Только не надо делать это руками через "models.IntegerField(blank=True, default=1)". Пусть за Вас думает база.
    Ответ написан
    1 комментарий