Проблема Laravel Попытка получить свойство 'id' не-объекта

Здесь я пытаюсь зациклить имена поставщиков с помощью цикла foreach, но получаю следующую ошибку

<tbody style = "font-size:small">

                    @foreach($material as $material)

                    <tr class = "odd" role = "row">

{!! Form::open(['route'=>'materialsupplier.store','class'=>'form-horizontal p-t-20']) !!}
                        <td>{{ $material->name }}<input type = "hidden" value = "{{ $material->id }}" name = "mat_id"></td>
                        <td></td>
                        <td>
                            <div class = "form-group{{ $errors->has('sup_id') ? ' has-error' : '' }}">

                                <div >
                                    <select class = "form-control js-cities" name = "sup_id">
                                        <option value = "" selected disabled>Select Supplier</option>
                                        @foreach ($supplier as $supplier)
                                         <option value = "{{ $supplier->id}}">{{$supplier->company_name}}</option>
                                        @endforeach
                                    </select>
                                </div>
                            </div>
                        </td>
                        <td>
 {{ Form::submit('Save',['class'=>'far fa-trash-alt btn btn-info btn-sm btn-rounded m-b-1 m-l-5']) }}
                           </td>  
                        {!! Form::close() !!}      
                    </tr>
                    @endforeach
                </tbody>

Проблема Laravel Попытка получить свойство &apos;id&apos; не-объекта

после этого я изменил свой код вот так

<select class = "form-control js-cities" name = "sup_id">
 <option value = "" selected disabled>Select Supplier</option>
    @foreach ($supplier as $supplier)
     <option value = "{{ $supplier}}">{{$supplier}}</option>
     @endforeach
  </select>

выход Проблема Laravel Попытка получить свойство &apos;id&apos; не-объекта

контролер

public function index()
    {
       $material = Material::all();
       $supplier = Supplier::all();

   return view('materialMgmt.material_suppliyer.create')->withMaterial($material)->withSupplier($supplier);
    }

Как мне избежать появления этой ошибки?

во-первых, выражение массива и значение имеют одно и то же имя! пожалуйста, измените его: @foreach($material as $material) и @foreach ($supplier as $supplier)

FatemehNB 23.10.2018 17:43

спасибо, сэр, ваш совет мне очень помог

Titu 23.10.2018 17:53
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
2
283
1

Ответы 1

Я изменил код следующим образом, и он сработал

<select class = "form-control js-cities" name = "sup_id">
      <option value = "" selected disabled>Select Supplier</option>
             @foreach ($supplier as $sup)
             <option value = "{{ $sup->id}}">{{$sup->company_name}}</option>
             @endforeach
 </select>

Сэр FatemehNB, Спасибо за ваше предложение.

Другие вопросы по теме