Задать вопрос
@Woshibai1

Надежный способ достать созданный пост в тесте формы django?

test_forms.py:
def test_edit_post_form(self):
        """Валидная форма редактирует запись в Post."""
        posts_count = Post.objects.count()
        form_data = {
            'text': '321Пост изменен',
            'group': f'{self.group.id}'
        }
        response = self.authorized_client.post(
            self.POST_EDIT_URL,
            data=form_data
        )
        ...

Нужен надёжный способ достать созданный пост, чтобы проверить его поля(Сортировка по id/дате не годится). Буду очень благодарен за помощь
  • Вопрос задан
  • 296 просмотров
Подписаться 1 Простой 1 комментарий
Пригласить эксперта
Ответы на вопрос 1
@deliro
1. В ответе на создание поста где-то отдавать ид созданного: урл редиректа вида /posts/1234/, в жисоне, а если ответ этого не подразумевает, то можно в заголовке или ставить в сессию (вариант с заголовком лучше)
2. При создании поста сохранять какой-нибудь last_post_id юзера (тоже подвержен состояниям гонки, как и фильтрация по дате/ид)
3. Ставить уровень изолированности транзакций выше read committed (repeatable read или serializable)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Strikt Москва
от 100 000 до 180 000 ₽
ITK academy Саратов
от 75 000 ₽
Sim-Ba Pay Санкт-Петербург
от 180 000 ₽