2016-11-02 96 views
1

所以我在Laravel关系中遇到了一些问题。在Lumen/Laravel查询关系字段5.3

我有铅转换一个模型,它有一个细节hasOne关系模型,详细模型包含hashkey领域,我需要使用。

public function details() 
{ 
    return $this->hasOne('App\Models\CampaignDetails', 'n_idcampaign', 'n_idcampaign')->select(['n_idcampaign', 'hashkey']); 
} 

到目前为止好,我真的只需要hashkey,但我需要返回idcampaign以及一个外键,否则它不会出于某种原因...

当我查询模型时,我执行以下操作。

return $this->model->with('details')->where('n_idcampaign', 1884)->first(); 

到目前为止,一切都很好,就返回了整个事情,这是一个痛苦来访问它像first()->details->hashkey但至少它的工作原理...

更大的问题时,我需要做的地方出现查询基于该hashkey ...

return $this->model->with('details')->where('idData', $id)->where('hashkey', $haskkey)->first(); 

这是不行的,我怎样才能让这个我可以查询基于一个场从关系(主模型在这种情况下hashkey

+0

也许试试wherePivot()而不是where? https://laravel.com/docs/5.3/eloquent-relationships – wouthoekstra

+0

@wouthoekstra'wherePivot'用于'belongsToMany'关系。 –

回答