Подтвердить что ты не робот

Django - сохранение объектов в сеансе

class Book(models.Model):
  author = models.ForeignKey(User)
  name = models.CharField(max_length=100)

def view(request):
  book = Book.objects.get(pk=1)
  request.session['selected_book'] = book

Хорошо ли хранить объекты в сеансе вместо их идентификатора?
Будет ли это "picklable" достаточно для использования в шаблонах, например?

<div>{{ request.session.book.author.name }}</div>
4b9b3361

Ответ 1

Это кажется плохой идеей. Помимо всего прочего, если вы храните объект в сеансе, он не изменится, если/когда версия базы данных будет выполнена.

Ответ 2

существует исключение:

if your object doesnt exist in db yet

например, если вы создадите его (объект) через множество шагов/представлений.