Я пытаюсь реализовать отправку подписанных файлов cookie в CreateView, но столкнулся с проблемой.Следующий код работает в UpdateView, но в CreateView у нас нет self.object в методе render_to_response, и в основном мы не можем получить pk там или, по крайней мере, я не знаю, как это сделать.
Вопрос в том, как получить pk или idнедавно созданного объекта или, возможно, в качестве альтернативы, в каком методе я мог бы переместить свой код, чтобы получить оттуда доступ к pk?
Спасибо.
def render_to_response(self, context, **response_kwargs):
response = CreateView.render_to_response(self, context, **response_kwargs)
existing_allowed_comments = self.request.get_signed_cookie('allowed_comments', default=None)
if not self.request.user.is_authenticated:
if existing_allowed_comments and str(self.object.pk) not in \
existing_allowed_comments:
response.set_signed_cookie('allowed_comments',
", ".join([existing_allowed_comments, str(self.object.pk)])
elif not existing_allowed_comments:
response.set_signed_cookie('allowed_comments', self.object.pk
return response
метод должен добавить pk созданных объектов к подписанномукуки-файлы, если пользователь не аутентифицирован.
self.get_object () также не работает - 404