2010-06-09 5 views

Répondre

2

Vous pouvez charger n'importe quel modèle dans n'importe quel contrôleur - appelez-le comme vous le feriez normalement.

Si vous avez besoin de charger un User de votre contrôleur Profiles, vous pouvez simplement utiliser User.find_by_whatever(), User.new, current_profile.user - ne sais pas comment vos associations sont mises en place, mais il ne devrait pas y avoir de restrictions d'accès.

+0

quand je l'utilise comme @user = User.new; @a = User.find (: all) il montre l'erreur "constante non initialisée ProfileController :: User" une chose est-ce que je manque? – ashok

+2

Vous avez certainement un modèle d'utilisateur mis en place? Pouvez-vous l'appeler correctement du contrôleur d'utilisateurs, ou n'est pas là un? – Jeriko

13

Le modèle est entité indépendante et vous pouvez l'appeler à partir de n'importe quel contrôleur.

There can be a model without a controller and vice-versa. 

Pour vous questionnez prendre un exemple ci-dessous

class ProfileController < ApplicationController 

    def some_method 
    @user = User.find(params[:user_id]) 
    if @user.update_attributes(params[:user]) 
     // some action 
    else 

     // some action 
    end 
    end 

end 
+1

Est-ce une pratique acceptable? – Shamoon

+2

oui bien sûr .... – Salil

Questions connexes