У меня есть веб-сайт, на котором перечислены различные продукты на странице, используя разбиение на страницы Laravel. Продукты на этой странице должны быть заказаны по их названию, однако здесь проблема.Запросить запрос по специальному отношению и paginate
Структура моей базы данных выглядит следующим образом:
+----------+ +--------------+
| Products | | Translations |
+----------+ +--------------+
| Id | | product_id |
| ... | | slug |
+----------+ | locale |
| value |
+--------------+
Название каждого продукта доступна в translations
таблице, где slug='name'
. Однако не каждый продукт имеет перевод в каждом доступном locale
.
Название продукта должно быть переводом в данном регионе. Если это не доступно, используется английское имя. Если это не доступно, используется первый доступный перевод.
Как это можно сделать в красноречивой или MySQL? Я искал решения, но не смог найти тот, который сделал именно это.
Где хранятся английским название? или другие имена, если на то пошло? – sagi
Все имена хранятся в таблице переводов с помощью 'product_id',' slug' и 'locale', чтобы найти правильные переводы. – Jerodev