J'ai le modèle Post
avec le champ published?
et un système d'autorisation qui définit la méthode admin?
à l'intérieur de ApplicationController
.Limiter l'accès à certains éléments de modèle dans Rails 3
Je souhaite limiter l'accès aux publications non publiées et les afficher uniquement à l'administrateur.
J'ai essayé de définir une portée accessible
pour renvoyer uniquement les messages publiés aux utilisateurs, mais tous les messages pour l'administrateur.
scope :published, where(:published => true)
def self.accessible
admin? ? all : published
end
Le problème est que la méthode admin?
ne peut être consulté à l'intérieur du modèle. Quelle est la meilleure façon de mettre en œuvre ce que je veux?
Bon pour les applications avec plusieurs utilisateurs, mais je n'ai aucun utilisateur enregistré sauf moi en tant qu'administrateur. Je vais chercher une solution plus jolie. –