Laravel关系查询生成器无法正常工作

时间:2019-01-05 03:20:09

标签: laravel eloquent eloquent--relationship

我有一个componentWillMount(){ const menuTreeNode = this.renderMenu(MenuList) this.setState=({ menuTreeNode }) } renderMenu = (data)=>{ return data.map((item)=>{ if(item.children){ return( <SubMenu title={item.title} key={item.key}> {this.renderMenu(item.children)} </SubMenu>) } return <Menu.Item title={item.title} key={item.key} > {item.title} </Menu.Item> }) } render(){ return ( <div> <div className = 'logo'> <img src='/assets/logo-ant.svg' alt = ''/> <h1>imooc ms</h1> </div> <Menu theme='dark'> {this.state.menuTreeNode} </Menu> </div> ) } PostUser模型。

我正在尝试通过查询构建从UserDetail类进入UserDetail,但是它没有到​​达Post,并给我以下错误:

UserDetail

我的代码:

Method Illuminate\Database\Query\Builder::user_detail does not exist.

请注意,我已经在模型中实现了这些关系。

发布模型

$post->user()->user_detail;

用户模型

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

用户详细信息模型

public function user_detail(){
    return $this->hasOne(UserDetail::class);
}

使用public function user() { return $this->belongsTo(User::class); } 可以正常工作。但我不希望查询也返回$post->user->user_detail

因为如果我将变量设置为User,则该值将返回$holder['user_detail'] = $post->user->user_detail内部,但也会在$holder[user_detail]内部创建一个user数组,并且$holder里面已经放置在user_detail中。

我该如何正确实现呢?

0 个答案:

没有答案