我的数据库中有几个表。 Blogs
,Users
,Posts
,Tags
是主要的。我还有表格链接:User_blogs
,Blog_posts
& Post_tags
。
我的问题是如何使用Laravel的类和方法,如belogs_to()
,has_many()
。
我需要有人揭开它。我读过很多文章和文档,但我仍然很困惑。
答案 0 :(得分:1)
一般来说,如果正确设置表,laravel足够聪明,可以检测到多对多关系。在中间/数据透视表中,两个表名都不应该复数,所以你应该有Users
,{{1} },Blogs
,Posts
作为您的个人表格,Tags
,User_Blog
,Blog_Post
作为您的中间表格。在这些表中,cols应正确反映Post_Tag
(小写),因此在tablename_id
中,它应该包含3个col User_Blog
,id
,user_id
等等在其他专栏上。
在您的模型中,您只需设置多对多关系即可
blog_id
每种型号都是如此。如果不能选择更改结构,那么只需在多对多关系中添加表名,如class User extends Eloquent
{
public function blogs()
{
return $this->has_many_and_belongs_to('Blog');
}
}