Laravel по-русски

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

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

#1 Re: Laravel 5.x » Парсинг html на laravel 5 » 17.07.2015 20:10:41

Вообще не понимаю зачем что-то ставить отдельно для парсинга,
Пиши свой контроллер - file_get_contents + preg_match_all
И учи регулярки:)

#2 Re: Laravel 5.x » Как реализовать мультиязычный сайт на Laravel 5? » 20.04.2015 18:23:14

zisma пишет:

Sarkozi, привет а что у тебя в контроллере написано, какой код? Я че то не понял что прописать в контролере и в роуте, где у тебя написано  //все роуты сайта

Привет, ты все роуты свои которые у тебя изначально были загоняешь в группу, которую я описал выше. Таким образом LaravelLocalization будет автоматически добавлять префикс к каждому твоему роуту (т.е. все ссылки станут вида сайт.com/ru/ссылка, сайт.com/en/ссылка)

В контроллере ничего, стандартная выборка из базы, и вывод в шаблон.

Покури маны этого пакета всё станет ясно:
https://github.com/mcamara/laravel-localization

#3 Re: Laravel 5.x » Как реализовать мультиязычный сайт на Laravel 5? » 19.04.2015 18:39:40

Как я это сделал на своем сайте - http://beatmonster()org
Я установил пакет - https://packagist.org/packages/mcamara/ … calization

Мультиязычный контент хранил в столбцах - например, description_ru, description_en
Также под переводы отдельных слов и выражений, а также ошибок валидации и прочего, создал папки lang/en и lang/ru и поместил туда файлы с переводами, об этом можно прочитать в офф доках

В файле ConfigServiceProvider поместил следующий код, с описанием моих локалей:
    public function register()
    {
        config([
                'laravellocalization.supportedLocales' => [
                'en'  => array( 'name' => 'English', 'script' => 'Latn', 'native' => 'English' ),
                'ru'  => array( 'name' => 'Russian', 'script' => 'Latn', 'native' => 'Русский' ),               
        ],
                'laravellocalization.useAcceptLanguageHeader' => true,

                'laravellocalization.hideDefaultLocaleInURL' => false

        ]);
    }

Далее, в модели я использовал get attribute, для назначения суффикса столбцу, взависимости от выбранной пользователем локали:
    public function getDescriptionAttribute()
    {
        $locale = App::getLocale();
        $column = "description_" . $locale;
        return $this->{$column};
    }

На главной странице, в шаблоне вывел выбор языка:
                    <ul class="nav navbar-nav navbar-right lang">
                            <li><a rel="alternate" hreflang="en" href="http://beatmonster()org/en" locale="en"><img src="/img/us-lang.png" alt="English"></a></li>
                            <li><a rel="alternate" hreflang="ru" href="http://beatmonster()org/ru" locale="ru"><img src="/img/rus-lang.png" alt="Russian"></a></li>
                        </ul>       

Все роуты, которые должны попадать под перевод, загнал в группу:
Route::group(['prefix' => LaravelLocalization::setLocale(), 'middleware' => [ 'localizationRedirect', 'localeSessionRedirect' ]], function()
{
    //все роуты сайта
});

Для вывода контента в шаблоне, просто указываю
<p>{{ $sample->description}}</p>

#5 Laravel 5.x » Gzip сжатие на сайте » 15.04.2015 17:05:27

Sarkozi
Ответов: 3

Подскажите как в Laravel 5 включить gzip сжатие? Я так понимаю это делается через .htaccess, может есть специальный сниппет?

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