как выбрать одну строку данных из БД, используя ссылку (тег) - PullRequest
0 голосов
/ 15 марта 2020

вот моя ссылка для запроса данных

<input type="Hidden" name="addid" value="{{$add->id}}">
<a href="{{route('PickAdd',[app()->getLocale(),'id'=>$add->id]) }}"class="btn btn-success ">{{ __('View More') }}</a>  

тогда это связано с Route следующим образом

Route::get('/PickAdd/{id}', 'MAddController@view')->name('PickAdd'); 

контроллер выглядит так

public function view($id)
    { //dd($id);
      $Padd = Madd::find('$id');
      return view('adds.add',compact('Padd','id'));
     }

это управление функция не работает. но я изменяю вот так

$Padd = Madd::find('22');

, тогда это работает, , что означает $ id = 22 * ​​1014 *

, если я запускаю DD, результат равен нулю насколько мне известно, мой код не может поймать передачу данных из внешнего интерфейса, вы можете помочь мне решить эту проблему

Ответы [ 2 ]

0 голосов
/ 15 марта 2020

Не используйте метод find(), если запись не существует. Используйте first()

$Padd = Madd::where('id',$id)->first();

Это работает, когда запись существует или нет.

Кроме того, посмотрите в модели Мэдда, вы определили другой первичный ключ, отличный от id, например

protected  $primaryKey = 'some-other-key';

, потому что это заставит Eloquent искать вместо id

0 голосов
/ 15 марта 2020

Вы передаете $id как string от вашего контроллера

Изменить

$Padd = Madd::find('$id');

на

$Padd = Madd::find($id);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...