Laravel Eloquent 关系子关系?
Laravel Eloquent Relationship Sub-Relationship?
我有一个 Offer class 具有以下关系:
class Offer extends Model
{
public function releases()
{
return $this->belongsToMany('App\Release');
}
}
版本class有这样的关系:
class Release extends Model
{
public function artist()
{
return $this->belongsTo('App\Artist');
}
}
最简单的修改方法是什么
App\Offer::with('releases')->get();
以便在每个版本中也获取艺术家信息?
您可以通过以下方式完成此操作:
App\Offer::with('releases.artist')->get();
您可以查看:http://laravel.com/docs/5.1/eloquent-relationships#querying-relations了解更多信息。
如果您有多个关系,您可以通过以下方式查询它们:
App\Offer::with(['releases.artist', 'releases.albums'])->get();
当您向下滚动一点时,您会看到
// Retrieve all posts that have at least one comment with votes...
$posts = Post::has('comments.votes')->get();
记住 "dot" 符号是 Laravel 的标准约定。例如加载视图:
view('folder.viewfile');
这同样适用于 eloquents 嵌套关系。
OrderProduct::with(
array(
'product' => function ($query) {
$query->select('id', 'store_id', 'en_name', 'bn_name', 'image')->with(
array(
'store' => function ($q) {
$q->select('id');
}
)
);
}
)
)->where('order_id', $order->id)->get(),
我有一个 Offer class 具有以下关系:
class Offer extends Model
{
public function releases()
{
return $this->belongsToMany('App\Release');
}
}
版本class有这样的关系:
class Release extends Model
{
public function artist()
{
return $this->belongsTo('App\Artist');
}
}
最简单的修改方法是什么
App\Offer::with('releases')->get();
以便在每个版本中也获取艺术家信息?
您可以通过以下方式完成此操作:
App\Offer::with('releases.artist')->get();
您可以查看:http://laravel.com/docs/5.1/eloquent-relationships#querying-relations了解更多信息。
如果您有多个关系,您可以通过以下方式查询它们:
App\Offer::with(['releases.artist', 'releases.albums'])->get();
当您向下滚动一点时,您会看到
// Retrieve all posts that have at least one comment with votes...
$posts = Post::has('comments.votes')->get();
记住 "dot" 符号是 Laravel 的标准约定。例如加载视图:
view('folder.viewfile');
这同样适用于 eloquents 嵌套关系。
OrderProduct::with(
array(
'product' => function ($query) {
$query->select('id', 'store_id', 'en_name', 'bn_name', 'image')->with(
array(
'store' => function ($q) {
$q->select('id');
}
)
);
}
)
)->where('order_id', $order->id)->get(),