使用表单数据作为文本

时间:2010-07-17 03:14:57

标签: ruby-on-rails forms

我正在尝试使用表单元素之外的表单数据。我想将表单数据显示为普通文本。

控制器:

@addresses = ['Billing', 'Shipping']
@addresses.each do |a|
  addresses.build(:address_type => a)
end

然后在我的表格中......例如......(haml)

- fields_for :addresses do |a|
    a.address_type  #to just render 'Billing', etc.

...或

- fields_for :addresses do |a|
%div{:class => a.address_type

我需要制作一个自定义的formbuilder方法吗?或者是否有现成的方式

2 个答案:

答案 0 :(得分:0)

无法理解你在寻找什么。该代码似乎根本不正确。如果@addresses是一个元素数组,你怎么期望它有任何ActiveRecord方法?

编辑: 如果你只想渲染数据,即使没有保存对象,也不是问题: 在控制器中你将构建对象:

...
addresses.build(:address_type => a)
...

然后,在视图中,使用该数据:

 <some tag>
    <%= @object.address_type %>
 </some tag>

有一个更好的例子,我可以更好地解释,但我希望你理解;)

答案 1 :(得分:0)

发现了对象方法!

- form_for @addresses do |a|
  %h1= a.object.address_type