php - 数据表一对一关联问题
PHP中文网
PHP中文网 2017-04-10 16:51:44
0
4
408
class User extends Authenticatable
{
    public function profile()
    {
        return $this->hasOne(Profile::class);
    }

}
class Profile extends Model
    public function user()
    {
        return $this->belongsTo(User::class);
    }
    }

上面是一张user表和profile表的Model,两张表一对一关系,当用户登录后,可以创建他的profile,然后提交。
可是,第二次访问这个创建profile的表单页,也能提交成功,这哪里是一对一,这不是一对多么!是哪里有错,还是模型中进行一对一关联后,要保证profile只有一条记录,在控制器中还要进行判断?

PHP中文网
PHP中文网

认证高级PHP讲师

全部回覆(4)
迷茫

要是能创建多个,那就不是一对一了呗
数据库是人设计的,又不是死的,需求是什么样的就设计成什么样的,如果是一对一,那就不能提交两个,如果能提交多个,那就是一对多

左手右手慢动作

提交后是重新覆盖那一条数据就可以一对一咯。

黄舟

首先查库看是否在profile已经有 该用户的记录了,如果有则update 更新 否则 insert插入记录

小葫芦

这个是你业务设计的问题,你需要在业务中去控制,如果出现了不符合一对一的情况,可以认为出现了数据不一致。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板