gpt4 book ai didi

orm - Laravel 4 : Eager loading

转载 作者:行者123 更新时间:2023-12-04 21:58:40 28 4
gpt4 key购买 nike

我有一张 table 叫 UserWords有一个 word_id其中的列,我想用它从 Words 表中获取行,并将它们像连接一样连接在一起。这样,每个人都将获得 UserWords 行中的信息。和 Words .我在 UserWord 中定义了这样的关系:

class UserWord extends Eloquent{
public function word(){
$this->belongsTo('Word');
}

}

然后在那之后,我尝试像这样获取所有 UserWords 和 Words:
$words = UserWord::with("word")->
whereRaw("user_id = ".Auth::user()->id.
" AND lang1 = '".$lang1.
"' AND lang2 = '".$lang2."'")
->get();

如果我没有 with() ,这会起作用。那么,我做错了什么?或者我将不得不创建一个原始 JOIN得到我想要的?我以前从未接触过关系,所以也许我认为这根本是错误的?无论哪种方式,如果可以,请教我更多,而不仅仅是给出答案!我阅读了文档,我认为它应该有效,但事实并非如此......我在这里问。

编辑:
我得到的错误是:
Call to a member function addEagerConstraints() on a non-object 

最佳答案

你的关系定义不正确,你必须返回belongsTo的结果方法调用。请尝试以下操作:

class UserWord extends Eloquent {
public function word(){
return $this->belongsTo('Word');
}
}

关于orm - Laravel 4 : Eager loading,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20109047/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com