BadMethodCallException 属于多个 Laravel 5.4

马利克·本·埃尔瓦菲

请我尝试在 Laravel 5.4 中建立多对多关系,但我总是收到此错误:

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

我认为我的代码很好,我无法修复它,请帮忙。

谢谢你。

这是我的代码:

用户模型

class User extends Model
{
    public function categories()
    {
        return $this->belongsToMany('App\Category', 'user_categorys');
    }

}

品类模型

class Category extends Model
{

    public function users()
    {
        return $this->belongsToMany('App\User', 'user_categorys');
    }

}

调用方法

$user = User::where('id',$id_user)->first();
            foreach ($request->input("idcategs") as $value) {
                $user->categories()->save($value);
            }
阿列克谢·梅泽宁

在使用多对多关系附加或分离模型时attach()您应该使用,detach()sync()方法。

如果idcategs是一组 ID,请执行以下操作:

$user = User::find($id_user);
$user->attach($request->idcategs);

如果它是一组准备好的数据,则需要先创建类别:

$categoriesIds = [];
$user = User::find($id_user);
foreach ($request->idcategs as $value) {
    $categoriesIds[] = Category::create($value)->id;
}
$user->attach($categoriesIds);

https://laravel.com/docs/5.4/eloquent-relationships#updating-many-to-many-relationships

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

BadMethodCallException Laravel

来自分类Dev

与with()一起使用时的Laravel 5 BadMethodCallException

来自分类Dev

Laravel属于多个

来自分类Dev

Laravel Artisan迁移[BadMethodCallException]

来自分类Dev

Laravel Artisan迁移[BadMethodCallException]

来自分类Dev

Laravel dusk 宏抛出的 BadMethodCallException

来自分类Dev

Laravel:BadMethodCallException方法[查找]不存在

来自分类Dev

Laravel:BadMethodCallException方法[存储]不存在

来自分类Dev

BadMethodCallException 方法 [插入] 不存在。在 Laravel

来自分类Dev

Laravel 5雄辩的关系属于ManyToMany

来自分类Dev

Laravel:多个播种表属于使用工厂的关系

来自分类Dev

我通过MongoDB从Laravel护照获取BadMethodCallException“ Client :: confidential()”

来自分类Dev

Laravel查询:Builder.php第2258行中的BadMethodCallException:

来自分类Dev

Laravel 4获取多个集合

来自分类Dev

Laravel 4多个搜索字段

来自分类Dev

多个数组 (Laravel 4)

来自分类Dev

Laravel 4属于BelongsTo的热切负载约束

来自分类Dev

Laravel 5与Charts4php

来自分类Dev

Best practice for Laravel 4 + Zurb Foundation 5?

来自分类Dev

Laravel 4 + Zurb Foundation 5的最佳实践?

来自分类Dev

Laravel 4/5搜索表单,例如

来自分类Dev

Laravel 5和4在同一域中

来自分类Dev

Laravel 5 Redirect :: to具有多个参数

来自分类Dev

Laravel 5 | 带多个关系的循环

来自分类Dev

Laravel 5-验证多个请求

来自分类Dev

laravel 5搜索多个字段

来自分类Dev

Laravel 5干预图片上传多个尺寸

来自分类Dev

在 Laravel 5 中上传多个文件

来自分类Dev

Laravel 4分页的多个视图