Если ваши URI должны выглядеть как "example.com/${obj.id}-${sluggify( obj.title )}"
, тогда генерирует эти URI, когда вы используете их . Этот URI не содержит данных, которых уже нет в БД, поэтому не добавляйте их снова. Единственная цель пули - сделать URL привлекательнее для людей и поисковых систем.
Возьмем Stackoverflow в качестве примера: Создание заголовка / слага на основе идентификатора PK
Если вы хотите выбирать только слагом, это должен быть первичный ключ, уникальный и неизменный. Вы должны знать, что наличие другого PK, обычного столбца id
, не потребуется.
Я не говорю, что слизняки плохие, и что спасение слизней всегда плохо. Есть много веских причин сохранить их в базе данных, но тогда вам нужно подумать о том, что вы делаете.
С другой стороны, выбор данных по их PK (и игнорирование пули) не требует размышлений, так что это должен быть путь по умолчанию.