J'ai installé rails_admin
petit bijou sans erreur ses modèles d'affichage crud aussi, mais j'ai besoin dans lequel je dois montrer current_user
connecté les données associéesaller chercher utilisateur connecté enregistrement associé à rails_admin
par exemple, l'utilisateur a beaucoup Livres donc dans admin rails Je veux seulement ce livre d'utilisateur, mais actuellement il est montrant tous les utilisateurs des livres qui est le comportement par défaut de rails_admin
j'ai aussi essayer d'utiliser cancancan
petit bijou pour obtenir même chose mais ca marche pas ma config rails_admin
de initializers comme ci-dessous
rails_admin.rb
RailsAdmin.config do |config|
### Popular gems integration
## == Devise ==
config.authenticate_with do
warden.authenticate! scope: :user
end
config.current_user_method(&:current_user)
config.parent_controller = 'ApplicationController'
## == Cancan ==
config.authorize_with :cancan,UserAbility
## == Pundit ==
# config.authorize_with :pundit
config.included_models = ["Book","User"]
config.actions do
dashboard # mandatory
index # mandatory
new
export
bulk_delete
show
edit
delete
show_in_app
end
end
userability classe est mis en œuvre comme ci-dessous
class UserAbility
include CanCan::Ability
def initialize(user)
# Define abilities for the passed in user here. For example:
if user.present?
can :access, :dashboard
can :manage, :Book,id:user.id
end
end
end
Comment est 'Book' défini? Avez-vous une clé étrangère à 'User'? – Makoto
oui j'ai la clé étrangère dans le modèle de livre – uzaif
Mécaniquement parlant alors, vous voudriez obtenir tous les livres où 'user_id' est le même que' current_user'. Pouvez-vous montrer où vous exécutez une requête comme ça? – Makoto