2010-07-17 3 views
0

Я пытаюсь использовать данные формы за пределами только элементов формы. Я хочу показать данные формы как обычный текст.используя данные формы как текст

контроллер:

@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 

бы мне нужно создать собственный метод формообразования? или существует существующий способ

ответ

0

обнаружил объект м еню!

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

не может понять, что вы ищете. этот код не кажется правильным. если @addresses - это массив элементов, как вы ожидаете, что у него есть какие-либо методы ActiveRecord?

EDIT: если вы хотите сделать только данные, даже если объект не сохраняется, это не проблема: в контроллере вы будете строить объект:

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

тогда, вид, использовать эти данные:

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

с лучшим примером, я могу объяснить лучше, но я надеюсь, вы понимаете;)

+0

Это были просто примеры, чтобы показать, что я пытался сделать. когда адреса построены, я передаю элементы массива @addresses в виде: address_type. на мой взгляд, в настоящее время я должен отобразить a.text_field: address_type, чтобы увидеть данные, и я установил его для отключения, а затем стиль, чтобы он выглядел не так, как текстовое поле (то есть без границы, без фона и т. д.). но i Я ищу лучшее решение, чем это. – brewster

Смежные вопросы