сохранение идентификатора в таблице непосредственных пользователей (последняя не найдена) - PullRequest
0 голосов
/ 25 декабря 2018

У меня много-много связей между сообщениями и тегами

Проблема заключается в том, что я хочу получить идентификатор записи и идентификатор тега, чтобы связать их вих непосредственная таблица Я сделал простой запрос, чтобы сделать это, и я использовал метод latest () в построителе запросов laravel, и он выдал эту ошибку:

Метод Illuminate \ Support \ Collection:: последняя не существует.

Это моя функция магазина:

  public function store(Request $request)
  {
    {
      $this->validate($request,[
        'title'=>'required',
        'body'=>'required',
        'tags'=>'required',
        'slug'=>'required',

      ]);

      $input = $request->all();
        $tags = explode(",", $request->tags);

          if ($input != null) {
            $post = post::create($input);
            $post->tag($tags);
            // the problem is in this two lines
            $post_id = DB::table('posts')->pluck('id')->latest();
            $tagged_id = DB::table('tagging_tagged')->pluck('id')->latest();
            //
            dd($tagged_id , $post_id);
            $relationship = new post_tagged;
            $relationship->post_id = $post_id;
            $relationship->tagged_id = $tagged_id;
            $relationship->save();
            return redirect('/admin/blog')->with('success' , 'Post added successfully');
          }
          return redirect('/admin/blog');
    }
 }

идея, которую я хочу достичь с помощью этих двух строк, состоит в том, чтобы получить последний идентификатор в сообщениитаблица и в таблице тегов (которая является новейшим сообщением) и затем сохранить его в ближайшей таблице

Я решил проблему, выполнив это

функция хранения

  public function store(Request $request)
  {
    {
      $this->validate($request,[
        'title'=>'required',
        'body'=>'required',
        'tags'=>'required',
        'slug'=>'required',

      ]);

      $input = $request->all();
        $tags = explode(",", $request->tags);

          if ($input != null) {
            $post = post::create($input);
            $post->tag($tags);
            $post_id = DB::table('tagging_tagged')->latest('taggable_id')->first();
            $post_id = $post_id->taggable_id;
            $tagged_id = DB::table('tagging_tagged')->latest('id')->first();
            $tagged_id = $tagged_id->id;
            $relationship = new post_tagged;
            $relationship->post_id = $post_id;
            $relationship->tagged_id = $tagged_id;
            $relationship->save();
            return redirect('/admin/blog')->with('success' , 'Post added successfully');
          }
          return redirect('/admin/blog');
         }
...