Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 21.12.2017 17:43:54

запись латиницей названия статьи для использования в маршрутах

Привет, хочу для практики  сделать проект такой, каталог книг, то есть будет две таблице рубрики и названия книги с ее описаний, тут я понял просто сделать связь таблиц и все.
И тут мне в голову пришло что бы в адресной строке было такое
mysite.loc/category/nameLibrary (Категория/названия книги)
Подскажите как можно мне автоматичиски хранить названия статей латиницой для url, и если есть такой url в БД то добавлять какой то символ в конец

Не в сети

#2 21.12.2017 17:50:19

Re: запись латиницей названия статьи для использования в маршрутах

https://laravel.com/docs/5.5/helpers#method-str-slug

а поле сделай уникальным и проверяй

Не в сети

#3 21.12.2017 17:53:04

Re: запись латиницей названия статьи для использования в маршрутах

Подскажите как можно мне автоматичиски хранить названия статей латиницой для url, и если есть такой url в БД

Это называется слаги (slugs). Если ты хочешь автоматически конвертировать названия книг на русском в латиницу (транслитерация), можешь использовать мой пакет.

то добавлять какой то символ в конец

Вообще не понятно о чем идет речь, распиши пожалуйста подробнее.

Не в сети

#4 21.12.2017 18:27:11

Re: запись латиницей названия статьи для использования в маршрутах

да что уж там, тогда и мой пакет big_smile
https://laravel.ru/forum/viewtopic.php?pid=14965#p14965
в ларке

use Illuminate\Support\Str;
$name = Str::slug($articles->text);

))

Изменено sam (21.12.2017 19:03:15)

Не в сети

#5 21.12.2017 18:45:25

Re: запись латиницей названия статьи для использования в маршрутах

https://laravel.com/docs/5.5/helpers#method-str-slugа поле сделай уникальным и проверяй

Там есть нюансы в плане SEO, т.к. Google и Яндекс используют разные правила для транслитерации, а str_slug - свои. Плюс, в таких пакетах обычно есть удобные инструменты для работы со слагами. Если SEO и инструменты не нужны, тогда да, str_slug - это самый разумный выбор.

Не в сети

#6 27.12.2017 14:31:31

Re: запись латиницей названия статьи для использования в маршрутах

Я делаю так - два поля, одно название статьи, другое псевдоним (alias). Есть плагин транслитерации, взять можно тут - http://masscode.ru/index.php/k2/item/28-litranslit, вот он и переводит кириллицу в латиницу, а по кнопке все отправляется в базу. Для уникальности можно перед отправкой добавлять рандомную строку или дату (время) добавления. Только нужно в базу добавить поле alias.

Не в сети

#7 23.10.2021 07:35:30

Re: запись латиницей названия статьи для использования в маршрутах

Ну а совсем просто использовать готовый пакет - https://github.com/cviebrock/eloquent-sluggable

Не в сети

Подвал раздела