13
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

Is it a good practice to store Objects in Session instead of their id ?
Will it be "picklable" enough to be used in templates for example ?

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

2 に答える 2

23

これは悪い考えのようです。他のこととは別に、オブジェクトをセッションに格納する場合、データベースのバージョンが変更される場合は変更されません。

于 2012-05-10T11:03:04.440 に答える
4

there is exception:

if your object doesnt exist in db yet

for example if you build it (object) through many steps/views.

于 2014-09-22T13:13:01.287 に答える