Хотя поиск по столбцу title
(простой текст произвольной формы) допустим, будет трудно полагаться на точность при переводе slug
в title
, так как изменение slug
может быть проблематичным c. Возьмите следующие примеры:
title | slug
"Spot-Check Article" | "spot-check-article"
"Bob's Article" | "bobs-article"
Если вы попытаетесь перевернуть заголовок (заменить -
на
и использовать слова с заглавной буквы), вы получите Spot Check Article
и Bobs Article
и Model::where('title', 'Spot Check Article')->orWhere('title', 'Bobs Article')->first();
не вернет результатов.
Если предположить, что PHP отвечает за преобразование предоставленного slug
в title
, тогда поиск по сути не будет медленнее, чем поиск непосредственно по столбцу slug
, но если вы полагаетесь на mysql
для преобразования, то это будет намного медленнее. В целом, лучшим подходом будет сохранение слага в базе данных, обеспечение уникальности и поиск по столбцу slug
.