What am I doing wrong? I just want to create a simple form where I can
enter the ID of a model and it take me to that model. I’m trying to
place the form in the application layout, so I can use it from anywhere
in my app. I’m using restful routes only. I keep getting this routing
error when trying to create the form:
ticket_url failed to generate from {:controller=>“tickets”,
:action=>“show”} - you may have ambiguous routes, or you may need to
supply additional parameters for this route.
Here’s my resource declaration (routes.rb):
map.resources :tickets
Here’s my “show” method in tickets_controller:
def show
begin
@ticket = Ticket.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.xml { render :xml => @ticket }
end
rescue ActiveRecord::RecordNotFound
logger.error(“Attempt to access invalid ticket_id =>
#{params[:id]}”)
flash[:warning] = “You have requested an invalid ticket.”
redirect_to tickets_path
end
end
Here’s the form_tag I’m trying to use:
<% form_tag ticket_path, {:id => ‘jumpbox’, :method => :get} do %>
Enter a ticket number:
<%= text_field_tag 'id', nil, :size => 8, :class => "textbox" %>
<%= submit_tag 'Go', :name => nil %>
Thanks for any help!