【问题标题】:laravel- many to many relationship with tagslaravel - 与标签的多对多关系
【发布时间】:2015-11-25 12:39:52
【问题描述】:

这是我的文章模型

function tags()
{
    return $this->belongsToMany('App\Tag')->withTimestamps();
}

这是我的文章模型

function articles()
{
    return $this->belongsToMany('App\Article');
}

这是我的文章控制器存储方法

public function store(ArticleRequest $request, Article $article)   
{
    $article=Auth::user()->articles()->create($request->all());

    $article->tags()->attach($request->input('tags'));

    return redirect('articles');
}

我遇到了这个错误

Builder.php 第 2071 行中的 BadMethodCallException:调用未定义 方法 Illuminate\Database\Query\Builder::tags()

帮我解决这个问题

【问题讨论】:

  • 你试过调试$article是什么?将 dd($article); 加载到控制器后尝试使用它。
  • 你能把routes的文件发一下吗?

标签: php laravel laravel-5


【解决方案1】:

如果我尝试 dd($articles),我已经把它输出了

                        Article {#206 ▼
                        #fillable: array:3 [▶]
                        #connection: null
                        #table: null
                        #primaryKey: "id"
                        #perPage: 15
                        +incrementing: true
                        +timestamps: true
                        #attributes: array:7 [▶]
                        #original: array:7 [▶]
                        #relations: []
                        #hidden: []
                        #visible: []
                        #appends: []
                        #guarded: array:1 [▶]
                        #dates: []
                        #dateFormat: null
                        #casts: []
                        #touches: []
                        #observables: []
                        #with: []
                        #morphClass: null
                        +exists: true
                        +wasRecentlyCreated: true
                       }

路由文件是:

                  <?php

                   Route::get('/', function () {
                   return view('welcome');
                    });


                   Route::resource('articles','articlescontroller');

                   Route::controllers([
                          'auth' => 'Auth\AuthController',
                          'password' => 'Auth\PasswordController',
                            ]);

【讨论】:

    猜你喜欢
    • 2017-06-21
    • 2018-03-16
    • 1970-01-01
    • 2013-05-15
    • 2014-09-27
    • 1970-01-01
    • 1970-01-01
    • 2021-06-04
    • 1970-01-01
    相关资源
    最近更新 更多