Ruby on rails 如何计算视图中的列数?
我做了一个应用程序来显示另一个表中的列,但我想知道如何计算结果,而不是显示信息 这是我的桌子Ruby on rails 如何计算视图中的列数?,ruby-on-rails,ruby,ruby-on-rails-2,Ruby On Rails,Ruby,Ruby On Rails 2,我做了一个应用程序来显示另一个表中的列,但我想知道如何计算结果,而不是显示信息 这是我的桌子 |policies| |id| |num_policy| 1 11111 2 22222 |insurances| |id| |id_policy| |net_insurance| 1 1 33333 2 1 44444 3 2 55555 4
|policies|
|id| |num_policy|
1 11111
2 22222
|insurances|
|id| |id_policy| |net_insurance|
1 1 33333
2 1 44444
3 2 55555
4 2 66666
|insurance_financing|
|id| |id_ensurance| |number|
1 1 1544
2 2 858
3 3 8484
4 4 848
我正在努力
|num_policy| |count|
11111 2
22222 2
这是我的控制器
class PolicyController < ApplicationController
def generate_print
@policies= Policy.find(:all)
end
end
class-PolicyController
这是我的模型
class Policy < ActiveRecord::Base
has_many :insurances
end
class Insurance < ActiveRecord::Base
belongs_to :policy
has_many :insurance_financing_details
end
class InsuranceFinancingDetail < ActiveRecord::Base
belongs_to :insurance
end
类策略
这是我的看法
<% @policies.each do |p| %>
<%= p.num_policy %>
<% p.insurances.each do |insurance| %>
<% insurance.insurance_financing_details.each do |detail| %>
<%= detail.number %>
<% end %>
<% end %>
<% end %>
请有人能帮我解决这个问题
我非常感谢您的帮助Policies.joins(:insurances).group(“Policies.id”).count
将为您提供一个散列,其中键是Policies.id,值是每个保单的保险计数
注意:如果一份保单没有任何保险,它将不会包含在结果中。但是您的代码是针对rails 3的,我标记了rails 2,我如何才能做到这一点?没有注意到rails 2标记。可能是这样的:
Insurance.count(:group=>“insurances.policy\u id”)
我得到了[1,2]:数组的未定义方法'num\u policy',这毫无意义。上面的表格定义正确吗<代码>身份证保单保险中的FK是否返回到保单?我不认为是这样;否则,您需要在关联上设置一些自定义FK指令。