1

我正在开发一个小型应用程序,并且试图弄清楚要编写什么代码并进行研究,但我无法正确解决。

我的应用程序有“bins”,它们是选项卡,我有一个 bins 表,其中包含:id、:label_name 等......每个 bin 都会有一个帖子。DB 有一个带有 :id、:post_name 的表帖子,并且我创建了 :bin_id。我目前正在努力实现的目标,在我的设计中......每个 bin 显示它在侧边栏中的主页上有多少帖子(例如:News Bin --- 0,Sports Bin ---- 10,Art Bin - -- 12 等等..)

这是我在主页上获得的 bins 结构的内容;

<% @bins_list.each do |bin| %>
    <div class="label %> active<% end %>"><span class="name">
</span>
<% else %><span class="num"><%= @bins.size %></span><% end %></div>
<% end %>

@bin.posts.size 的 "class="num" 行应该显示分配给该 bin id 的帖子数,方法是通过 post 表并找到 :bin_id 列与代码中的 bin id 匹配的所有帖子以上。

因此,每个 bin 都有其 ID 并保存在 DB 中......用户将能够将帖子分配给该 Bin ID,并且帖子会将 bin id 保存在 :bin_id 列下的 Post 表 DB 中。

我已经完成了;类 Bin < ActiveRecord::Base has_many :posts end

class Posts < ActiveRecord::Base
   belongs_to :bin
end

我在上面的视图代码中尝试过这样做;

<span class="num"><%= @bin.posts.size %></span>

也试过了;

<span class="num"><%= @posts.where(:bin_id == :bin).size %></span>

也试过了;

<span class="num"><%= @posts.size %></span>

class HomeController < ApplicationController
    def index
       @posts = Post.find(params[:bin_id])
    end
end

但是,这不起作用,在终端中,我知道没有为 Class #blah blah 定义“帖子”......我认为在模型中做“has_many”和“belongs_to”应该相关?我认为也有点困惑如何找到 Bins ID 并将其连接并通过 Post 搜索以查看 Bins ID 是否匹配,然后计算与该 ID 匹配的所有“真实”帖子并显示计数。

有什么帮助我可以修改我的代码并构造它以使其工作吗?

4

1 回答 1

0

试试:<%= bin.posts.size %>

于 2013-09-10T15:31:02.420 回答