Как настроить определенные действия для пользователей / администраторов в Active Admin - PullRequest
0 голосов
/ 27 августа 2018

В настоящее время у меня есть модель пользователя, в которой есть пользователи / и перечислитель для администратора.Я пытаюсь настроить пару вещей, поэтому любая помощь приветствуется.1. Как мне настроить его так, чтобы только администраторы и текущие пользователи могли просматривать и редактировать свою информацию.2. Как мне установить, где только администраторы могут создавать новых пользователей.В основном, какие шаги мне нужны, чтобы пользователи могли только получать доступ к своей информации и защищать учетные записи.Я приложил свой активный admin / user.rb и некоторую базовую авторизацию для своих сообщений.

ActiveAdmin.register User do
  permit_params :email, :password, :password_confirmation, :name, :admin, :avatar, :bio, :location
  scope_to :current_user
  actions :all, :except => [:destroy, :new], unless: proc {current_user.admin?}



  index do
    column :name
    column :email
    column :admin
    column :location
    image_column :avatar, style: :thumb
    actions
  end

  form do |f|
    f.inputs do
      f.input :name
      f.input :email
      f.input :bio
      f.input :location
      f.input :admin, label: "Admin"
      f.input :password
      f.input :password_confirmation
      f.input :avatar
    end
      f.actions
  end

  filter :name


end

У меня уже есть базовая авторизация с Pundit.

class PostPolicy
  attr_reader :user, :post

  def initialize(user, post)
    @post = post
    @user = user
  end

  def index?
    true
  end

  def show?
    true
  end

  def create?
    user.admin? || @post.user == user
  end

  def create?
    user.admin? || @post.user == user
  end

  def destroy?
    user.admin? || @post.user == user
  end

end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...