Yeah, I ran 'rake routes' to study the routing but I just didn't think I'd have to add to it. I specified the 'get' method to ticket_path with an ID param coming in...I don't understand why that wouldn't work.
So the search method will now render the show method? or redirect_to? or what? Thanks for the help. On Mar 7, 1:33 am, Andrew Bloom <akbl...@gmail.com> wrote: > ticket_path is expecting you to pass the ID of the ticket you are > looking for. Something like this: > ticket_path(123) > > Run 'rake routes' to get a good idea of what each named route is > doing. > > What you need is something like this: > > # tickets_controller > def search > show > end > > # routes.rb > map.resources :tickets, :collection => { :search => :post } > > You can now GET or POST to /tickets/search or tickets_search_path. > > On Mar 7, 1:05 am, Jl Smith <rails-mailing-l...@andreas-s.net> wrote: > > > 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 %> > > <p> > > <label for="id"><em>Enter a ticket number:</em></label><br/> > > <%= text_field_tag 'id', nil, :size => 8, :class => "textbox" %> > > <%= submit_tag 'Go', :name => nil %> > > </p> > > <% end %> > > > Thanks for any help! > > -- > > Posted viahttp://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 this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---