<code>class User extends Authenticatable
{
public function profile()
{
return $this->hasOne(Profile::class);
}
}</code><code>class Profile extends Model
public function user()
{
return $this->belongsTo(User::class);
}
}</code>上面是一张user表和profile表的model,两张表一对一关系,当用户登录后,可以创建他的profile,然后提交。
可是,第二次访问这个创建profile的表单页,也能提交成功,这哪里是一对一,这不是一对多么!是哪里有错,还是模型中进行一对一关联后,要保证profile只有一条记录,在控制器中还要进行判断?
<code>class User extends Authenticatable
{
public function profile()
{
return $this->hasOne(Profile::class);
}
}</code><code>class Profile extends Model
public function user()
{
return $this->belongsTo(User::class);
}
}</code>上面是一张user表和profile表的model,两张表一对一关系,当用户登录后,可以创建他的profile,然后提交。
可是,第二次访问这个创建profile的表单页,也能提交成功,这哪里是一对一,这不是一对多么!是哪里有错,还是模型中进行一对一关联后,要保证profile只有一条记录,在控制器中还要进行判断?
要是能创建多个,那就不是一对一了呗
数据库是人设计的,又不是死的,需求是什么样的就设计成什么样的,如果是一对一,那就不能提交两个,如果能提交多个,那就是一对多
提交后是重新覆盖那一条数据就可以一对一咯。
主页面上引用了三个页面也说不过去呀。本次主要是把数据库合并了一下,至于功能,没有加什么新的东西,还是那些:在线订购、帐单查询(添加了一个打印的连接)、特价商品列表、热买商品列表、留言本(许多朋友说以前的那个有问题,现在换成枫叶阁女士留言本,挺不错的)、新闻、完善的管理
3
首先查库看是否在profile已经有 该用户的记录了,如果有则update 更新 否则 insert插入记录
这个是你业务设计的问题,你需要在业务中去控制,如果出现了不符合一对一的情况,可以认为出现了数据不一致。
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号