Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 初学者关于has_和属于许多人的问题_Ruby On Rails - Fatal编程技术网

Ruby on rails 初学者关于has_和属于许多人的问题

Ruby on rails 初学者关于has_和属于许多人的问题,ruby-on-rails,Ruby On Rails,我的模型看起来像这样: 部分 有很多博客吗 博客 _和_属于_许多:部分 有很多帖子吗 邮递 属于:博客 我可以通过以下操作从某个部分的博客中获取所有帖子: section.blogs[n].帖子 我的问题是如何通过博客将所有帖子连接到一个部分?我喜欢这样: Section has_and_belongs_to_many :blogs has_many :posts, :through => :blogs section.blogs.posts 或者更甜蜜的是: 第2节员额 谢谢大家!

我的模型看起来像这样:

部分 有很多博客吗

博客 _和_属于_许多:部分

有很多帖子吗

邮递 属于:博客

我可以通过以下操作从某个部分的博客中获取所有帖子:

section.blogs[n].帖子

我的问题是如何通过博客将所有帖子连接到一个部分?我喜欢这样:

Section
has_and_belongs_to_many :blogs
has_many :posts, :through => :blogs
section.blogs.posts

或者更甜蜜的是:

第2节员额


谢谢大家!

您想要的是:

Section
has_and_belongs_to_many :blogs
has_many :posts, :through => :blogs

我不确定语法是否完全正确,但是through属性正是您要查找的属性。

不幸的是,这引发了一个异常:“where子句”中的“blogs.section\u id”未知列:选择count*AS count\u all FROM posts INNER JOIN blogs ON posts.blog\u id=blogs.id where blogs.section\u id=1@Erik-当需要时,您必须以稍微不同的方式设置模型/表格与has相反,using具有多个through,并且属于多个。查看文档:@Jimmy Cuadra:你的意思是我应该放弃has_和_属于_many,转而支持has_many:通过?@Jimmy,谢谢你发布文档链接,应该可以帮助澄清这一点。@erik,这取决于;博客和部分真的是相互依赖的吗?还是博客属于一个部分,而一个部分有很多博客?