我已經閱讀了Laravel 5.1的文檔,但是我找不到(或理解)一種讓父母的ID有孩子的方法。我可以與查詢生成器是這樣做的:如何在Laravel找到一個父母身份的孩子?
$child = \DB::table('children_table')->where('parent_id', $parent->id)->first();
但隨着該問題是,它返回一個stdClass的,這是我以後不能再使用更新屬於關聯關係。 任何人都可以幫忙嗎?
我已經閱讀了Laravel 5.1的文檔,但是我找不到(或理解)一種讓父母的ID有孩子的方法。我可以與查詢生成器是這樣做的:如何在Laravel找到一個父母身份的孩子?
$child = \DB::table('children_table')->where('parent_id', $parent->id)->first();
但隨着該問題是,它返回一個stdClass的,這是我以後不能再使用更新屬於關聯關係。 任何人都可以幫忙嗎?
不知道這是你在說什麼,但你可以試試這個:
在父類:
class Parent extends Model
{
public function children()
{
return $this->hasMany('App\Child');
}
在孩子類:
class Child extends Model
{
public function parent()
{
return $this->belongsTo('App\Parent');
}
然後,你應該可以做一些事情:
App\Parent::with('children')->find($id);
您可以在雄辯的模型中使用查詢生成器方法,如where
由於口才型號查詢生成器,你應該檢查所有的 方法上查詢生成器可用。您可以在您的Eloquent查詢中使用這些 方法中的任何一種。
https://laravel.com/docs/5.2/eloquent#retrieving-multiple-models
看到標題爲添加附加約束。
'child'通常與'parents'有'hasMany'關係嗎?如果是這樣,請調用關係,並且如果你想要一個*特定的*父項,則合併一個where。 '$ child-> parent() - > find($ parent-> id);',假設關係名稱相當標準。 – CmdrSharp
雖然看起來你並不想在你的例子中得到一個'child'。因爲您正在從'parents_table'中獲取記錄。 – Doom5
對不起,我的意思是'children_table',我現在就編輯它。 –