2010-06-10 5 views
1

Je rends une nouvelle action mais je reçois l'URL "index". Pour être plus précis, mon action create ressemble à ceci:Weird Rails Problème d'URL lors du rendu d'une nouvelle action

class ListingsController < ApplicationController 
    def create 
     @listing = Listing.new(params[:listing]) 
     @listing.user = @current_user 

     if @listing.save 
      redirect_to @listing 
     else 
      flash[:error] = "There were errors" 
      render :action => "new" 
     end 
     end 
end 

Quand il y a des erreurs, je reçois la « nouvelle » action, mais mon URL est l'URL de l'index - http://domain.com/listings

Quelqu'un sait pourquoi cela se passerait-il ? Mon fichier itinéraires est assez standard:

map.connect 'listings/send_message', :controller => 'listings', :action => 'send_message' 
    map.resources :listings 
map.root :controller => "listings" 
map.connect ':controller/:action/:id' 
    map.connect ':controller/:action/:id.:format' 

Répondre

0

lorsque vous vous rendez obtenez seulement le contenu qui sera renvoyé au navigateur que le corps de la réponse. On Rendering your url is not get changed.

meilleur exemple créer un échafaudage application.so lorsque vous soumettez le formulaire et la nouvelle erreur se produit votre « new.html.erb » est affiché, mais votre URL montre domain_name/controller_name/create

Hope that helps :)

Questions connexes