laravel使用DB类的时候关联表写入数据问题
迷茫
迷茫 2017-05-16 16:47:37
0
1
334

laravel使用DB类的时候关联表写入数据问题:

使用门面的时候,要给当前用户设置角色,可以用$user->roles()->attach(1);如下所示:

    public function run()
    {
        $user=User::create([
            'name' => 'xiaoming',
            'email' => 'xiaoming@example.com',
            'password' => bcrypt('secret'),
            
        ]);
        $user->roles()->attach(1);
    }

问题:
现在要用DB类来完成上述功能,下面代码的$user->roles()->attach(1);不能运行,
会报错:

  [Symfony\Component\Debug\Exception\FatalThrowableError]
  Call to a member function roles() on boolean

应该怎么写才行?

    public function run()
    {
        $user=DB::table('users')->insert([
            'name' => 'xiaoming',
            'email' => 'xiaoming@example.com',
            'password' => bcrypt('secret'),
        ]);
        $user->roles()->attach(1);
    }
迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(1)
黄舟

使用 DB 的时候,返回的是一个 bool 值:

$user=DB::table('users')->insert([
            'name' => 'xiaoming',
            'email' => 'xiaoming@example.com',
            'password' => bcrypt('secret'),
        ]);
$user->roles()->attach(1);

$user 是一个 bool 值。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!