作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
对于一对一关系的情况,如果我在方法调用中完全指定key,hasOne
有区别吗?和 belongsTo
关系?或者,如果我使用 hasOne
,换一种方式问在关系的双方,结果会一样吗?
最佳答案
是的,它在某些情况下可以指定键并使关系起作用。在某些情况下,我的意思主要是 检索结果。下面是一个例子:
D B
users profiles
----- --------
id id
etc... user_id
etc...
hasOne
使用“错误”关系两次
class User extends Eloquent {
public function profile(){
return $this->hasOne('Profile');
}
}
class Profile extends Eloquent {
public function user(){
return $this->hasOne('User', 'id', 'user_id');
}
}
$profile = Profile::find(1);
$user = $profile->user;
users
的主键就像一个引用
user_id
的外键在
profiles
.
associate
:
$user = User::find(1);
$profile = Profile::find(2);
$profile->user()->associate($user);
$profile->save();
HasOne
没有方法
associate
. (
BelongsTo
有)
belongsTo
和
hasOne
在某些情况下可能表现相似。他们显然不是。与关系的更复杂的交互将不起作用,从语义的角度来看这是无稽之谈。
关于laravel - 如果同时指定了两个键,Eloquent hasOne 与belongsTo 会退化为相同的函数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26150925/
我通过 glDrawElements() 向 GPU 发送了一个 GL_TRIANGLES 的 VertexBuffer+IndexBuffer。 在顶点着色器中,我想将一些顶点捕捉到相同的坐标以简化
我是一名优秀的程序员,十分优秀!