Попытка получить свойство необъекта Laravel (получить строку) - PullRequest
3 голосов
/ 20 февраля 2020

Я сейчас работаю с моей "функцией обновления".

public function edit($id)
{
    $product = Inventory::find($id);
    return view('/update',compact('product')) ;
}

Это моя кнопка просмотра на моем блейде

<a href="{{ route('edit',$prod->id) }}"  class="btn btn-raised btn-primary btn-sm">
                view
            </a>

Она работает, когда я перенаправляю ее на свой блейд редактирования

, но когда я изменил $ id на $ prod_num

 public function edit($prod_num)
    {
        $product = Inventory::find($prod_num);
        return view('/update',compact('product')) ;
    }

мой $ id - это bigInt и первичный ключ (AU), а $ prod_num - строка.

как это будет работать, если я хочу найти prod_id

Спасибо

Ответы [ 2 ]

1 голос
/ 20 февраля 2020

Метод find() будет искать в первичном ключе вашей модели. Если вы хотите получить запись по другому атрибуту, вы можете использовать where() и first():

$product = Inventory::where('prod_num', $prod_num)->first();
0 голосов
/ 20 февраля 2020
@foreach($product as $prod)
 <tbody>
  <tr>
   <td>{{$prod->id}}</td> 
   <td>{{$prod->prod_name}}</td> 
   <td>{{$prod->prod_qty}}</td> 
   <td>{{$prod->prod_number}}</td>
   <td>{{$prod->bacth}}</td>
   <td> <a href="{{ route('edit',$prod->id) }}" class="btn btn-raised btn-primary btn-sm"> view </a> </td> 
  <tr>
@endforeach
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...