我有一个脚手架Currency
和一个模型Neural Network
分别由:has_one
和:belongs_to
连接。我想在Currency
show
视图中创建一个表单,该表单将用户的1到30之间的整数作为参数。当用户提交表单时,我希望它从Neural Network
模型调用方法(对应于当前货币的实例)并将整数作为参数传递。
如何在视图中对此进行编码?
答案 0 :(得分:0)
您应该使用delegate
来允许一个模型调用其他模型的方法
class Greeter < ActiveRecord::Base
def hello
'hello'
end
def goodbye
'goodbye'
end
end
class Foo < ActiveRecord::Base
belongs_to :greeter
delegate :hello, to: :greeter
end
Foo.new.hello # => "hello"
Foo.new.goodbye # => NoMethodError: undefined method `goodbye' for #<Foo:0x1af30c>
“我如何编写视图代码”究竟是什么意思?
如果您想使用单一表单中的数据保存两个模型,则应使用accepts_nested_attributes_for