laravel 5.4 yajra datatable таблица запросов cant по идентификатору url говорит, что отсутствуют необходимые параметры

Я хочу запросить таблицу по идентификатору url из yajra datatable, но не могу запросить отсутствующий параметр.

контроллер

public function getpostshow($id,request $request)
{   
   $medrep = Medrep::find($id);
   $req = $request->segment(2);
    $users = DB::table('itinerarys')
    ->select('doctors.*','medreps.*','itinerarys.*')
    ->join('doctors', 'itinerarys.doctor', '=', 'doctors.doctor_id')
    ->join('medreps', 'itinerarys.medrep', '=', 'medreps.medrep_id')
    ->where('itinerarys.medrep', '=', $req);
    return Datatables::of($users)
    ->editColumn('EmployeeLastName', '{!! str_limit($EmployeeLastName, 60) !!}')
    ->editColumn('CustomerCode', '{!! str_limit($CustomerCode, 60) !!}')
    ->editColumn('CustomerLastName', '{!! str_limit($CustomerLastName, 60) !!}')

    ->make(true);
}

маршрут

Route::get('medrep/{id}/getpostshow', 
['as'=>'medrep.getpostshow','uses'=>'MedrepController@getpostshow']);

person Sebastian Mendoza    schedule 16.06.2017    source источник
comment
Пожалуйста, покажите свой метод формы для [Route: medrep.getpostshow] в файле лезвия   -  person AddWeb Solution Pvt Ltd    schedule 16.06.2017
comment
ты должен написать вот так "ajax": "{{ route('medrep.getposts', ["id"=>$whateverID]) }}"   -  person Pankaj Makwana    schedule 16.06.2017


Ответы (2)


Вы должны передать значение при вызове маршрута

{{ route('medrep.getposts', ['id' => 1]) }}

person Pankaj Makwana    schedule 16.06.2017
comment
ajax: {{route ('medrep.getpostshow', ['id' = ›$ medrep])}} я делаю это человек, но там написано undefind variable medrep - person Sebastian Mendoza; 16.06.2017
comment
Привет, человек, он работает, но когда я перехожу в / medrep, он говорит, что undefined variable medrep - person Sebastian Mendoza; 16.06.2017
comment
ErrorException в 3ebfed88e002be05c605d0dcedcdf15eb94426a2.php, строка 207: неопределенная переменная: medrep (вид: C: \ wamp \ www \ emcp.dm \ resources \ views \ layouts \ app-template.blade.php) (View: C: \ wamp \ www \ emcp.dm \ resources \ views \ layouts \ app-template.blade.php) (Вид: C: \ wamp \ www \ emcp.dm \ resources \ views \ layouts \ app-template.blade.php) - person Sebastian Mendoza; 16.06.2017
comment
Возможно, у вас нет значения в переменной $medrep или оно не определено в представлении или контроллере - person Pankaj Makwana; 16.06.2017
comment
как я могу определить, что $ medrep определяется в контроллере, потому что он работает, но не определен в представлении - person Sebastian Mendoza; 16.06.2017
comment
Привет, чувак, спасибо, я решил это, упорядочив свои взгляды, теперь работает как шарм - person Sebastian Mendoza; 16.06.2017

вы должны использовать параметр $ id после запроса следующим образом:

public function getpostshow(Request $request,$id)

и параметр запроса Request $request не request $request

person Vishal Varshney    schedule 16.06.2017
comment
Я делаю это, но ничего не происходит, он говорит Отсутствуют необходимые параметры для [Маршрут: medrep.getpostshow] [URI: medrep / {id} / getpostshow]. (Вид: C: \ wamp \ www \ emcp.dm \ resources \ views \ layouts \ app-template.blade.php) (Вид: C: \ wamp \ www \ emcp.dm \ resources \ views \ layouts \ app- template.blade.php) (вид: C: \ wamp \ www \ emcp.dm \ resources \ views \ layouts \ app-template.blade.php) - person Sebastian Mendoza; 16.06.2017
comment
ajax: {{route ('medrep.getposts')}}, это мой маршрут таблицы - person Sebastian Mendoza; 16.06.2017
comment
Laravel по умолчанию предполагает, что первый параметр является объектом запроса, поэтому важно установить правильный порядок. - person ; 16.06.2017
comment
Route :: get ('medrep / {id}', ['as' = ›'medrep.getpostshow', 'uses' =› 'MedrepController @ getpostshow']); попробуйте это удалить getpostshow - person Vishal Varshney; 16.06.2017
comment
Для этого маршрута требуется $ id medrep / {id} / getpostshow, поэтому в этом случае вы не можете использовать помощник маршрута. объедините URL-адрес вместе с $ id посередине - person ; 16.06.2017
comment
Отсутствуют обязательные параметры для [Маршрут: medrep.getpostshow] [URI: medrep / {id}]. (Просмотр: C: \ wamp \ www \ emcp.dm \ resources \ views \ layouts \ app-template.blade.php) произошла та же ошибка, что getpostshow скрыто в URL-адресе, потому что это данные моей таблицы - person Sebastian Mendoza; 16.06.2017
comment
Вы должны передать значение при вызове маршрута. {{ route('medrep.getposts', ['id' => $whateverID]) }} - person Pankaj Makwana; 16.06.2017
comment
привет, панкадж, я {{route ('medrep.getposts', ['id' = ›$ AnyID]) запиши это в мою таблицу ajax, но пропущена переменная $ anyID - person Sebastian Mendoza; 16.06.2017
comment
{{route ('medrep.getposts', ['id' = ›$ AnyID]) теперь он работает, моя единственная проблема - когда я иду на route / medrep, он говорит undefined variable $ AnyI - person Sebastian Mendoza; 16.06.2017
comment
@SebastianMendoza $whateverID просто пример, вы должны передать имя вашей переменной любого значения - person Pankaj Makwana; 16.06.2017