2011-04-28 4 views
1

Dans mon application, j'ai besoin de définir des actions pour toutes les réponses format.js et format.htm. À ce moment j'ai quelque chose comme ceci dans tous les contrôleurs:Rails 3 définir les actions par défaut pour la réponse

def index 
    @users = User.all 

    respond_to do |format| 
    format.html {html_response} 
    format.js {js_response} 
    end 
end 

Mais je pense que ce n'est pas une bonne solution. Que puis-je faire?

+0

Et comment '' html_response' et js_response' regarder? – nathanvda

Répondre

2

Faire une méthode privée dans votre ApplicationController et appellent de partout où nécessaire

class ApplicationController < ActionController::Base 
    … 
    private 

    def default_responses 
    respond_to do |format| 
     format.html {html_response} 
     format.js {js_response} 
    end 
    end 
end 


class SomethingsController < ApplicationController 
    def index 
    @somethings = Something.all 
    default_responses 
    end 
end 
Questions connexes