Чтобы быть более понятным, я сломаю ваш код, как показано ниже, и добавлю некоторые детали
class CategoriesController extends Controller
{
public function create()
{
$categories = Category
::orderBy('name','desc')
->where('parent_id', NULL)
->get();
// Your are passing variable but I change it as below to be more clear
// return view('admin.category.create', compact('categories'));
//now you are passing the value to the view
return view('admin.category.create', ['categories' => $categories]);
}
}
Теперь давайте поймать его в представлении. Обратите внимание, что теперь $ категории доступны в представлении. Если вы передаете ['A' => $categories]
, тогда представление имеет переменную $A
, поэтому вы должны вызвать соответствующую переменную, которую вы определили в контроллере.
<div class="form-group">
<label for="exampleInputPassword1">Parent Category</label>
<select name="parent_id" class="form-control">
**{{-- In here you should pass $categories --}}**
@foreach ($categories as $category)
<option value="{{ $category->id }}">{{ $category->name }}</option>
@endforeach
</select>
</div>