Rails 3.1.3
latest formtastic

My app requires dynamic select forms, so I have models

class Departure < ActiveRecord::Base
  has_many :airlines
  has_many :destinations, :through => :airlines
end

class Destination < ActiveRecord::Base
  has_many :airlines
  has_many :departures, :throught => airlines
end

class Airline < ActiveRecord::Base
  belongs_to :departure
  belongs_to :destination
end

And using Formtastic,

<%= semantic_form_for @plan, :remote=>true do |f| %>
  <%= f.inputs do %>
    <%= f.input :departure,
  :collection=>Departure.find(:all, :order=>:city).collect{ |c|
[c.city,c.id]},
  :required=>true %>
    <div id="destinationCity">
      <%= render :partial => 'destination'  %>
    </div>

    <div id="airlineCompany">
      <%= render :partial => 'airline'  %>   <======HERE!!!!
    </div>

    <%= f.action :submit, :as => :button %>
  <% end %>
<% end %>


and JavaScript is ready as well for Ajax responses.

And this works if there is no partial, '_airline.html.erb' part!

Adding the partial _airline.html.erb raises an error,

<%= semantic_form_for "plan", :remote => true do |f| %>
  <%= f.inputs do %>
    <% if !@airlines.blank? %>
      <%= f.input :airline, :collection=>airlines.collect{ |s|
[s.company,s.id]} %>
    <% else %>
      <%= f.input :airline, :collection=>[] %>
    <% end %>
  <% end %>
<% end %>


#error
ActionView::Template::Error (undefined method `airline' for
#<Plan:0x000001037e66f8>):
    3:     <% if !@airlines.blank? %>
    4:       <%= f.input :airline, :collection=>airlines.collect{ |s|
[s.company,s.id]} %>
    5:     <% else %>
    6:       <%= f.input :airline, :collection=>[] %>
    7:     <% end %>
    8:   <% end %>
    9: <% end %>

I don't understand the error message because there is no method used in
this particular partial.
And similarly, the controller does not have such method, 'airilne'.

Can anyone guess the cause of this error?

Thanks

soichi

-- 
Posted via http://www.ruby-forum.com/.

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To unsubscribe from this group, send email to 
rubyonrails-talk+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to