Rendu et/ou rediriger ont été appelés à plusieurs reprises dans cette action..?

Je reçois le DoubleRenderError et je ne peux pas comprendre pourquoi! En gros, j'ai une action qui en appelle une autre action qui vérifie que l'utilisateur saisi de la requête pour les erreurs, et si il y a une erreur, le son s'arrête et affiche le message d'erreur. Mais lorsque je fais une requête avec une erreur, que quand j'ai le double de rendu! Tout suggstions?

Heres l'erreur vérificateur d'action:

def if_user_formulated_request_properly
    unless request.post?
      flash[:error] = "This page can only be accessed through the search page. (POST request only)"
 redirect_to(:action => "index") and return
    end

    if params[:query].blank?
      flash[:error] = "Search criteria can not be blank"
redirect_to(:action => "index") and  return
    end

    if !(params[:query] =~ /-/)
      flash[:error] = "( Format of search criteria is wrong.<br /> Should be [IXLSpecClass value][year]-[Message ID] for exam
ple GP07-8)"
redirect_to(:action => "index") and  return
    end

    if !(QueryParser.expression.match(params[:query]))
      flash[:error] = %( Format of search criteria is wrong.<br />Should be [IXLSpecClass value][year]-[Message ID] for examp
le GP07-8)
redirect_to(:action => "index") and return
  end
 yield

Et juste au cas où vous avez besoin de l'action à l'appel de cette action..

 def show
        if_user_formulated_request_properly do
        @statuses = IXLStatus.find(:all)
        @input_messages = InputMessage.search_by(params[:query].stri
p) unless params[:query].blank?
        @query = params[:query]
        end
        respond_to do |format|
          format.html #default rendering
        end
        end
  end

Mise à JOUR

Aussi oublié de mentionner, c'était à l'origine l'un des rails de 2 app et a été de travail, cette erreur a commencé quand j'ai mis à rails 3 (je crois), donc peut-être rails 3 fait quelque chose de différent avec and return?

OriginalL'auteur Jonah Katz | 2011-08-31