Задать вопрос

Missing Request Laravel?

Добрый день!
Есть вот такой роут.
Route::get('create-form-edit-user', 'UserController@createFormEditUser')->name('createFormEditUser');

Этот роут возвращает представление с данными пользователя
public function createFormEditUser(Request $request) {
        $id = $request->get('id');
        $user = User::find($id);
        return view('pmo.users.modal-edit',['user' => $user]);
    }


Данное представление отображается как модальное окно при помощи jquery confirm. Класс edit-user есть ссылка
$('.fixed-table-body').on('click', '.edit-user', function(e) {
            e.preventDefault();
            formEditUser.url = $(this).attr('href')
            formEditUser.open()
        });


Контроллер принимает Request, но при нажатии (я так понимаю) jquery confirm не передает Request. Как это можно исправить?

Есть также другой способ. Я использую бустрап тейбл, и чтобы добавить мне ссылку, я использую это
<th data-field="id" data-formatter="LinkFormatter">Actions</th>

function LinkFormatter(value, row, index) {
  return "<a href='"+row.url+"'>"+value+"</a>";
}


Я думал использовать вот так
Route::get('create-form-edit-user/{id}', 'UserController@createFormEditUser')->name('createFormEditUser');

function LinkFormatter(value, row, index) {
  return "<a href='"{{route('createFormEditUser, ['id' => ???]')}}"'>"+value+"</a>";
}

А вот тут возникает вопрос: "Как можно передать значение из js в php?"
  • Вопрос задан
  • 90 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега PHP
Request $request - это объект запроса, его Laravel автоматически вам передаст, если вы в параметрах его указали.

formEditUser.url = $(this).attr('href') - здесь у вас в адресе должен быть указан get-параметр id и тогда всё будет работать. Откуда вам брать этот id пользователя из вопроса непонятно.

P.S.
function LinkFormatter(value, row, index) {
  return "<a href='"{{route('createFormEditUser, ['id' => ???]')}}"'>"+value+"</a>";
}

Здесь для конкатенации используется плюс, что говорит о том, что это javscript. Но при этом вы используете серверную функцию route() (если у вас не подключен laroute, конечно), а главное - формат шаблона blade. Либо у вас по совпадению на фронте шаблонизатор с тем же форматом и есть функция генерации url по параметрам роута Laravel, либо вы вообще не понимаете, что пишете.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽