这是我的 类别下拉式 编码:
<div class="control-group">
<label class="control-label">Under Category </label>
<div class="controls">
<select name="category_id" id="category_id" style="width:220px;">
<option value='' selected disabled>Select</option>
@foreach(App\Category::all() as $cat)
<option value="{{$cat->id}}">
@if {{ $cat->parent ? '--' . $cat->name : $cat->name }}
selected @endif>{{ $cat->parent ? '--' . $cat->name : $cat->name }}
</option>
@endforeach
</select>
</div>
</div>
对于更新类别,我只用
@if {{ $cat->parent ? '--' . $cat->name : $cat->name }}
selected @endif>{{ $cat->parent ? '--' . $cat->name : $cat->name }}
但却给出了这样一个错误:-
ErrorException (E_ERROR) 语法错误,意外的':',期待'('(View.F:\\laragon\www\flipcart\resources\views\admin\products\editproduct.blade.php))。 F:\laragon\www\flipcart\resources\views\admin\products\editproduct.blade.php)
首先从最佳实践的角度来看,不要从视图中与数据层通信。使用控制器将数据传递给视图。
对于你的问题:修复if语句,你是想呼应条件。
<select class="form-control form-control-alternative" name="category">
<option selected value="{{$category->id}}">{{$category->name}}</option>
@foreach($$categories as $cat)
@if($cat->id !== $category->id)
<option value="{{$cat->id}}">{{$cat->name}}</option>
@endif
@endforeach
</select>
调用我的控制器的函数
public function __invoke(Category $category)
{
$categories = Category::all();
return view('machine.edit', compact('category', 'categories'));
}