Генерация тестовых данных для Stories¶
Проблема¶
Использование стандартного Faker для генерации историй приводит к созданию бессмысленного текста ("lorem ipsum" или случайные слова) и отсутствию изображений (или битым ссылкам). Это ухудшает восприятие продукта при демонстрации и тестировании.
Решение¶
Для создания качественных тестовых данных используется подход "Predefined Templates + Randomization":
- Шаблоны: Заранее подготовленный список словарей с реалистичными заголовками, описаниями и тегами, специфичными для домена (Архыз, горы, лыжи, походы).
- Изображения: Использование прямых ссылок на Unsplash с параметрами оптимизации (
auto=format&fit=crop&w=800&q=80). Это гарантирует наличие и качество изображений. - Скрипт:
api-admin/reseed_stories.pyвыбирает случайный шаблон, случайного пользователя (из существующих) и генерирует дату создания.
Пример шаблона¶
{
"title": "Восхождение на Софийские озера",
"description": "Сегодня был невероятный день! ...",
"location": "Софийские озера",
"tags": ["горы", "поход", "озера", "природа", "Архыз"],
"images": [
"https://images.unsplash.com/photo-1464822759023-fed622ff2c3b..."
]
}
Как использовать¶
Для обновления данных запустить:
python api-admin/reseed_stories.py