имею ввиду использовать и json (spatie) и отдельную таблицу(astrotomic)?
Например, для настроек или меню юзать json-колонку, где не нужен поиск.
А для всяких статей где нужно искать полнотекстово, использовать астротомик с отдельными таблицами для переводов?
так в разных моделях и используй разный подход, пересечения не будет, а вот если в одной модели и то и то, то наверное это не стоит делать.
та это понятно. Просто думаю какие подводные камни могут быть еще, помимо того что другой разраб немного растеряется от разных подходов в проекте
опять же подход подходом, но когда кол-во языков будет больше 3-4-х, то spatie может начать проигрывать,т.к. при использовании spatie выборка происходит по полной, т.е. все переводы а потом выбирается нужный из раскодированного json, в в astrotomic, хоть и происходит запрос к базе данных, но выбирается только нужный язык. и поиск не является самым узким звеном при использовании spatie, а узкое звено как раз, мое мнение, объемные данные, которые будут выбираться из базы данных при выборки данных для модели из базы. P.S. вроде так, но могу ошибаться
1. спати проигрывает с объемом - да, соглашусь 2. астротомик тоже достаёт всё сначала и потом уже фильтрует на основе текущей/фолбек локали. Но это можно переписать спокойно самому 3. поиск у спати проигрывает, если юзать mysql. на постгресе полегче с json колонками насколько я знаю. Хотя постгрес уже давно не юзал( 4. я хочу юзать спати основой, но бывают случаи когда без астротомика не обойтись. Как например с поиском по большему кол-ву языков или данных
когда возникает поиск по большому количеству данных, то в мощь надо брать Laravel Scout c драйвером от совсем простых tntsearch до монстра Elastic, ну или сторонние сервисы за деньги и тогда уже без разницы, что там в модели используется
так то оно так, но иногда не хочется зависить от стороннего сервиса на мелком проекте, где клиент скупердяй. По этому просто добавить астротомик будет норм. Ну или подключить какой-то драйвер БД на laravel scout и индексировать сам себе в БД😳
Обсуждают сегодня