Подскажите пожалуйста, как в Django из объекта формы (ModelForm) получить объект модели
Пишу тест - нужный ли пост был загружен в форму.
Из response беру форму:
response = self.authorized_client.get(reverse('post:post_edit', kwargs={'post_id': '1'}))
форма = response.context.get('form')
Беру пост из базы:
пост_из_бд = PostModelTest.posts.get(pk=1)
И сравниваю: assertEqual(форма, пост_из_бд).
Так вот вопрос - как мне из формы вытащить пост, который был в неё загружен?
Ответы (1 шт):
Автор решения: Lugovets
→ Ссылка
Разобрался. Получаю объект поста из формы следующим образом:
post_from_form = response.context.get('form').save(commit=False)
а сам пост из тестовой БД:
post = PostModelTest.posts.get(pk=PostModelTest.post.pk)
и спокойно сравниваю:
self.assertEqual(post_from_form, post)