Closed ren3104 closed 1 year ago
Вроде бы починил: https://github.com/SecondThundeR/shikithon/commit/d9d7f7bbd9efa05db84e45463a4779836571f1a8
Забыл добавить модель ранобэ в юнион для таргета(
Если не сложно перепроверить, то буду рад
p.s. похоже дело не в этом, а в Pydantic, который путается в моделях и берет почему-то именно мангу, буду думать как это пофиксить
Почекал доку Pydantic еще раз и в итоге каким-то чудом починил этот мем с помощью валидаторов:
https://github.com/SecondThundeR/shikithon/blob/ccb53c5f1f3d4016bb6272fbc8f993257ce28dea/shikithon/models/manga.py#L51-L55 https://github.com/SecondThundeR/shikithon/blob/ccb53c5f1f3d4016bb6272fbc8f993257ce28dea/shikithon/models/ranobe.py#L51-L55
Пример с ранобе:
Пример с мангой:
Пример с аниме:
Вроде бы теперь все работает как надо
Я бы изменил валидацию с kind
на url
, потому что это поточнее, как по мне.
url.startswith('/ranobe')
.
Вот кстати я это не сделал по одной причине. Когда я тестил у себя, то у меня возникали такие случаи, что в поле с ссылкой почему-то сама ссылка начиналась с /mangas
(хотя когда переходишь по ней, тебя кидает на /ranobe
Так что я подумал, что надежнее будет все же ориентироваться по полю kind
Еще раз потестил остальную работу с новыми валидаторами и пока что отвалилась только модель манги, ибо в нем типов еще больше, поэтому вынес их в отдельную константу https://github.com/SecondThundeR/shikithon/blob/60665084ff8e911a80d8a6f90574ce1337f77657/shikithon/models/manga.py#L14 В остальном ничего такого не заметил, так что закрываю этот issue и делаю релиз с фиксом
При получении истории пользователя все ранобэ парсятся в
Manga
модели, а неRanobe
.Пример: id=320104646 created_at=datetime.datetime(2023, 1, 24, 20, 41, 20, 645000, tzinfo=datetime.timezone(datetime.timedelta(seconds=10800))) description='Изменена оценка c 9 на 10' target=Manga(id=14893, name='Monogatari Series: First Season', russian='Цикл историй: Первый сезон', image=Image(original='/system/mangas/original/14893.jpg?1675141811', preview='/system/mangas/preview/14893.jpg?1675141811', x96='/system/mangas/x96/14893.jpg?1675141811', x48='/system/mangas/x48/14893.jpg?1675141811'), url='/ranobe/z14893-monogatari-series-first-season', kind='light_novel, score=8.94, status='released', volumes=6, chapters=107, aired_on='2006-11-01', released_on='2010-07-28', english=None, japanese=None, synonyms=None, license_name_ru=None, description=None, description_html=None, description_source=None, franchise=None, favoured=None, anons=None, ongoing=None, thread_id=None, topic_id=None, myanimelist_id=None, rates_scores_stats=None, rates_statuses_stats=None, licensors=None, genres=None, publishers=None, user_rate=None)