Вы можете сделать это без формы, используя наблюдаемое поле
<%= collection_select("event", "trainer_id", @trainers , :id, :name, {:prompt => true}) %>
<%= observe_field "event_trainer_id",
:url => {:controller=> :events, :action => :find_trainer},
:on=>"change",
:with => "'value='+document.getElementById('event_trainer_id').value"
%>
<div id="some_id"></div>
Код контроллера
def find_trainer
#Get your Search Results in the @search_results
#you get search value in params[:value]
render :update do |page|
page.replace_html 'some_id' , :partial => "some_partial", :object => [@search_results] #now you can use object @search_results in events/_some_partial.html.erb
end
end