В настоящее время у меня есть модель пользователя, в которой есть пользователи / и перечислитель для администратора.Я пытаюсь настроить пару вещей, поэтому любая помощь приветствуется.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