• SEF URL's in Symfony2. Как из базы тащить по id, а выводить ЧПУ?

    qant
    @qant
    programer
    Вопрос конечно ж сильный ))) Руслан все верно ответил, но если пилите уже чье то либо нет желания переписывать часть коде где уже используеться id то:

    На вскидку чтото вроде завести спец поле куда транслитировать заголовок страницы в чпу ()

    к примеру из базы вытянули такое (в идеале собрались вставить в базу)

    id=567
    title=Я пост супер тема
    discr=Этот посто про супер тему
    body=Тут вся хрень хтмл и картинки и тп и тд

    Ну и берете title гуглите функцию что то аля CyrToLat + замена пробелов на "_" и впуть добавляете в базу либо подменяете через .htaccess по 301

    вобщем что бы в результате было что то
    ....
    $chpu_title = CyrToLat ($result->title);
    $db->add_field_to_table($table, $chpu_title)->where(id=$result->id);
    ....
    что бы появилось поле в базе
    chpu_title=ya_post_super_tema

    А далее как хотите, если у вас по id определяет то подставляете chpu_title либо уже так и формируете ссылки взяв chpu_title вместо id.

    Вообще как то странно... такой вопрос, про такой фреймворк вызывает дисонанс.
    Ответ написан
    2 комментария
  • SEF URL's in Symfony2. Как из базы тащить по id, а выводить ЧПУ?

    RussellKvashnin
    @RussellKvashnin
    WEB-developer
    Никак. Да и нет в этом никакой надобности.
    В сущности страницы добавляется поле - дополнительный уникальный идентификатор (slug зовется буржуями).
    В запросе приходит именно этот параметр, и именно по нему вы и ищите в базе.
    Вполне себе годное решение.
    Ответ написан
    3 комментария