我正在尝试将示例用户插入我的数据库。
我的数据库包含3个模型,这些模型应该同时填充。模型包括:用户,个人资料和团队。
我的模型已使用相关的belongsTo()
/ hasMany()
引用等正确设置。
在laravel中,我的代码如下所示:
$user = new User([ 'email' => 'sample@sample.com', 'password' => bcrypt('password1'), 'username'=> 'sampleuser']);
$profile = new Profile(['name' => 'Sample','bio' => 'All about me']);
$team = new Team(['name' => 'SuperAdmins']);
$user->profile()->save($profile);
$user->teams()->attach($team, ['type' => 4]);
我怎样才能让它工作>?这不起作用,我的控制台在插入配置文件表时引用'user_id' cannot be null
。
修改 谢谢,罗斯威尔逊的回答,我去了:
$user = new User([ 'email' => 'sample@sample.com', 'password' => bcrypt('password1'), 'username'=> 'sampleuser']);
$user->save();
$profile = new Profile(['name' => 'Sample','bio' => 'All about me']);
$user->profile()->save($profile);
$team = new Team(['name' => 'SuperAdmins']);
$user->teams()->save($team, ['type' => 4]);
答案 0 :(得分:1)
通过您的示例,您实际上永远不会保留User
模型。
在保存个人资料关系之前添加$user->save();
。
在将$team
附加到User
body{
margin: 0 auto;
}
#wrapper{
margin: 0 auto;
height: 100%;
width: 100%;
right: 0px;
left: 0px;
top: 0px;
bottom: 0px;
position: relative;
background-color: black;
}
#div1{
margin: 0 auto;
height: 120px;
width: 100%;
right: 0px;
left: 0px;
top: 0px;
position: fixed;
background-color: #222222;
text-align: center;
color: white;
z-index: 2;
}
#div2{
margin: 0 auto;
height: 300px;
width: 100%;
top: 120px;
right: 0px;
left: 0px;
position: absolute;
background-color: #990000;
text-align: center;
color: white;
}
#div3{
margin: 0 auto;
width: 100%;
top: 420px;
bottom: 0px;
right: 0px;
left: 0px;
position: absolute;
background-color: #999955;
height: 100%;
min-height: 100%;
}
希望这有帮助!