Как найти категорию фотографов, когда я редактировал в laravel - PullRequest
1 голос
/ 06 августа 2020

Я создаю блог в Laravel. У меня есть две таблицы - photographers и categories. Когда я хочу отредактировать одного фотографа, у меня возникают проблемы с категориями. Контроллер моего фотографа отправляет категории в представление, я могу видеть их во время редактирования.

При добавлении таблицы фотографов:

public function store(Request $request)
{
    $photographer = new Photographer;
    $photographer->user_id = 1;
    $photographer->title = $request->title;
    $photographer->lang = $request->lang;
    $photographer->body = $request->body;
    if($request->has('image')) {
        $image = $request->file('image');
        $filename = $image->getClientOriginalName();
        $image->move(public_path('images/slideShows'), $filename);
        $photographer->image = $request->file('image')->getClientOriginalName();
    }
    $photographer->sliders = json_decode($request->sliders, true);
    $photographer->save();
    $photographer->categories()->attach($request->category);
    $category = new Category;
    $category->name = $request->title;
    $category->parent_id = $request->category;
    $category->lang = $request->lang;
    $category->save();
    return redirect()->route('photographers.index');
}

При обновлении

public function update(Request $request, Photographer $photographer)
{
    $photographer->user_id = 1;
    $photographer->title = $request->title;
    $photographer->lang = $request->lang;
    $photographer->body = $request->body;
    if($request->has('image')) {
        $image = $request->file('image');
        $filename = $image->getClientOriginalName();
        $image->move(public_path('images/slideShows'), $filename);
        $photographer->image = $request->file('image')->getClientOriginalName();
    }
    $photographer->sliders = json_decode($request->sliders, true);
    $photographer->save();
    $photographer->categories()->sync($request->category);
    $category = Category::find($request->get('id'));
    $category->name = $request->title;
    $category->parent_id = $request->category;
    $category->lang = $request->lang;
    $category->save();
    return redirect()->route('photographers.index');
}

Фотограф. php

public function categories()
{
    return $this->belongsToMany(Category::class);
}

Я получаю эту ошибку.

Создание объекта по умолчанию из пустого значения

Когда я изменил после

$category = Category::find($request->get('id'));
dd($category);

Я вижу дисплей null.

...