我正在尝试学习如何在我的Rails 5应用程序中使用模型问题。
我有一个嵌套模型:
class Stance::Cost < ApplicationRecord
include HasCostPolicy
belongs_to :organisation, inverse_of: :cost
在我的models / concerns文件夹中,我有:
module HasCostPolicy
extend ActiveSupport::Concern
included do
enum cost_sharing: {
proportionately: 1,
equally: 2,
no_contribution: 3,
bear_all_costs: 4,
other_cost_policy: 5
}
end
end
然后在我的嵌套表格中,我有:
<%= f.input :ip_expenses, as: :select, label: "Responsibility for IP expenses", collection: Stance::Cost.cost_sharing.map { |key, val| [key.humanize, key] } %>
当我尝试渲染组织表单时(使用嵌套的费用字段),我收到一条错误消息:
undefined method `cost_sharing' for #<Class:0x007ffe7eaef220>
为了能够在嵌套表单中使用HasCostPolicy问题,我需要做什么?
答案 0 :(得分:1)
奇怪的是,我需要在表格中复数cost_sharing。
我不明白为什么,但这有效:
<%= f.input :ip_expenses, as: :select, label: "Responsibility for IP expenses", collection: Stance::Cost.cost_sharings.map { |key, val| [key.humanize, key] } %>