Заменить lang на имя маршрута - PullRequest
0 голосов
/ 21 июня 2020

Посмотрите мой код

    data.forEach(element => {
         var url = '{{ route("pl.frontend.article.single", ":id") }}';
        url = url.replace(':id', element.id);
        dataHtml += `<a href="` +url+ `"><figure style="background-image: url(/uploads/article/` +element.cover+ `)"> </figure></a></li>`;
    });

Он работает правильно, но я хочу заменить pl на en, pl, de, et c в зависимости от того, какой язык был выбран. Этот метод (с reaplace) не работает. Есть идеи?

@ Edit Посмотрите на это:

var url = '{{ route(":lang.frontend.article.single", ":id") }}';

Laravel отобразить ошибку, что маршрут ": lang.frontend.article.single" не определен. Как я могу заменить lang другим способом?

@ edit2

Route::group(['prefix' => 'pl'], function(){
    App::setLocale('pl');
    Auth::routes();
//...
    Route::get('artykul/{id}', [
        'uses' => 'FrontarticlesController@single',
        'as' => 'pl.frontend.article.single'
    ]);
//...

    //and
Route::group(['prefix' => 'en'], function(){
    App::setLocale('en');
    Auth::routes();
    Route::get('article/{id}', [
        'uses' => 'FrontarticlesController@single',
        'as' => 'en.frontend.article.single'
    ]);

Я перевожу url, поэтому я не могу заменить url-адрес.

1 Ответ

0 голосов
/ 21 июня 2020

Вы должны использовать вот так

data.forEach(element => {
     var url = "{{url('')}}/artykul/"+id+'/'+lang,
     url = url.replace(':id', element.id);
     dataHtml += `<a href="` +url+ `"><figure style="background-image: url(/uploads/article/` +element.cover+ `)"> </figure></a></li>`;
});

И ваш маршрут вот так

Route::group(['prefix' => 'pl'], function(){
    App::setLocale('pl');
    Auth::routes();
//...
    Route::get('artykul/{id}', [
        'uses' => 'FrontarticlesController@single',
        'as' => 'pl.frontend.article.single'
    ]);
//...

    //and
Route::group(['prefix' => 'en'], function(){
    App::setLocale('en');
    Auth::routes();
    Route::get('articles/{id}', [
        'uses' => 'FrontarticlesController@single',
        'as' => 'en.frontend.article.single'
    ]);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...