2017-07-26 17 views
-1

我想顯示我的數據庫中的所有模板,但我得到這個錯誤試圖獲得非對象的屬性。這裏是我的形式沒有成功我試圖從數組中獲得1對象在foreach laravel5.4

<form method="POST" action="{{route('product_create')}}"> 
      {{csrf_field()}} 
      <select class="form-control" name="template"> 
       @foreach($templates as $template =>$key) 
        <option value="{{$key->id}}" {{isset($key)&& $key->id == $$key->name ? 'selected' :'' }} ></option> 
       @endforeach 
      </select> 
      <input class="btn btn-primary" type="submit" value="Product toevoegen"> 
     </form> 

如果I DD $模板,我得到這個數組

array:2 [▼ 
1 => "product" 
2 => "test" 
] 

這裏是控制器

if (isset($_POST['template']) && !empty($_POST['template'])){ 
     $propertyTemplate = PropertyTemplate::find($_POST['template']); 
    }else{ 
     $propertyTemplate = PropertyTemplate::find(1); 
    } 

什麼我錯在這裏做

+0

你可以在你傳遞'$ templates'的地方添加你的控制器的代碼嗎? – Maraboc

+0

@Maraboc hanks爲您的答案。 if(isset($ _ POST ['template'])&&!empty($ _ POST ['template'])){ $ propertyTemplate = PropertyTemplate :: find($ _ POST ['template']); } else { $ propertyTemplate = PropertyTemplate :: find(1); } –

+0

然後你將'$ propertyTemplate'傳遞給視圖?因爲只有一個模板不是模板數組! – Maraboc

回答

0
@foreach($templates as $key =>$template) 
     <option value="{{$key}}">{{$template}}</option> 
@endforeach 
相關問題