Как вывести данные из связанной таблицы в django?

У меня есть встроенная таблица User и таблица Note, связанная с ней по ключу.

class Note(models.Model):
    header = models.CharField(max_length=100)
    note_text = models.TextField()
    data = models.DateField()
    user = models.ForeignKey(User, on_delete=models.CASCADE)

То есть у зарегистрированного пользователя может быть несколько заметок. Как получить все эти заметки от этого конкретного пользователя (который сейчас посетил его страницу)? Мне нужно получить эти заметки в файле views.py.

Я пробовал разные способы, не знаю, как это сделать.

Надеюсь, этот ответ поможет вам...

Во-первых, в вашем запросе уже есть объект пользователя. Но все же вы хотите отфильтровать заметки и для других пользователей, тогда сделайте

get_user = User.objects.get(id=id)    # For any random user
get_user = request.user               # For authenticated user

Получив пользователя, вы просто фильтруете его с помощью модели Note следующим образом...

get_notes = Note.objects.filter(user=get_user)

Вы готовы!

Вернуться на верх