Я хочу вставить обновление содержимого таблицы при вставке из другой таблицы - PullRequest
0 голосов
/ 13 апреля 2020

У меня есть код Laravel, который я использовал для вставки данных в таблицу, но я хочу обновить содержимое другой таблицы на основе сведений о вставленном элементе; ниже код моего контроллера

public function docadd(Request $request){


        $doc=new documents();
         $doc->claim_id=request('id');
         $doc->file_name=request('new');
         $doc->cat=request('new');
         $doc->type='needed';
         $doc->description='needed';
        $doc->save();

            $id=$doc->claim_id;
            $nm=$doc->file_name;
            $dc=options::where('claim_id', $id)
                    ->get();
                    $ed=$dc[0][$nm];
            dd($dc[0]->$ed);  //this dd returns "Doc2"
            $dc->$ed=''; i want it to update the content of the table column with the column with 
  name of the dd value
            $dc->save();
        return redirect()->back();
    }

Image of the Database

Пожалуйста, мне действительно нужна помощь с этим

1 Ответ

0 голосов
/ 13 апреля 2020

Я думаю, что у вас есть ошибка логика c. Если вы хотите обновить данные, используйте first() вместо get(), он вернет начальное значение. Может быть так:

 public function docadd(Request $request){
     $doc= new documents();
     $doc->claim_id=request('id');
     $doc->file_name=request('new');
     $doc->cat=request('new');
     $doc->type='needed';
     $doc->description='needed';
    $doc->save();
        //$id=$doc->claim_id;
        $nm=$doc->file_name;
        $dc=options::where('claim_id', $doc->claim_id)
         ->first();
        //Also you can use like this 
        //$dc= options::findOrFail($doc->claim_id);
        $dc->$ed=''
        $dc->save();
    return redirect()->back();
}

Тогда вы можете что-то сделать, если я вас правильно понимаю.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...