您好我有以下3个表格,彼此之间有ID,如下所示,我正在尝试在Laravel中为每个创建一个模型,但我很困惑如何使用belongsTo&其他...
TABLE: posts
-----------------------------
id Auto-inc
type_id if (3 its for a blog)
title
content
TABLE: blog
-----------------------------
id Auto-inc
post_id the post id
cat_id blog_cat table id
slug
TABLE:blog_cat
-----------------------------
id Auto-inc
cat_name
现在我正在尝试为Blog.php编写模型,BlogCat.php& Post.php,我可以使用这样的东西:
$blog = Post::with('blogCat')->get()->toArray();
获得一个帖子&如果type_id = 3(博客)从博客表中获取博客信息的数组是可能的,或者我只需要使用select,where / Join?
由于
答案 0 :(得分:0)
在Blog模型中,您需要一个返回BelongsTo()的cat()关系。
在Post Model中,您需要一个返回HasOne()的blog()关系。
获取热门博客的帖子集合:
$blog = Post::with('blog')->get()
为每个博客收集热门加载博客和BlogCats的帖子集合:
$blog = Post::with('blog.blogCat')->get()
要仅为type_id为3的帖子加载博客,您需要使用“eager load constraint”