2015-07-21 1 views
1

Я добавил имя, фамилию и поля рождения, чтобы разработать регистрацию. Вот ссылка на мой оригинальный вопрос.Custom Spree Devise Registration - Ошибка авторизации администратора

Adding name to Spree Devise registration

Кажется, что на стороне внешнего интерфейса все работает. Однако теперь я получаю предупреждение Авторизация, когда я пытаюсь получить доступ к моему администратору.

Вот лог консоли:

Started GET "/admin/orders" for ::1 at 2015-07-21 13:25:16 -0500 
Processing by Spree::Admin::OrdersController#index as HTML 
    Spree::Preference Load (0.3ms) SELECT "spree_preferences".* FROM "spree_preferences" WHERE "spree_preferences"."key" = $1 LIMIT 1 [["key", "spree/backend_configuration/locale"]] 
    Spree::User Load (0.5ms) SELECT "spree_users".* FROM "spree_users" WHERE "spree_users"."deleted_at" IS NULL AND "spree_users"."id" = $1 ORDER BY "spree_users"."id" ASC LIMIT 1 [["id", 6]] 
    (0.7ms) SELECT COUNT(*) FROM "spree_roles" INNER JOIN "spree_roles_users" ON "spree_roles"."id" = "spree_roles_users"."role_id" WHERE "spree_roles_users"."user_id" = $1 AND "spree_roles"."name" = $2 [["user_id", 6], ["name", "admin"]] 
Redirected to http://localhost:3000/unauthorized 
Completed 302 Found in 88ms (ActiveRecord: 4.1ms) 

Я попытался переопределить приложение/контроллеры/Шпрее/администратор/users_controller_decorator.rb

module Spree 
    module Admin 
    UsersController.class_eval do 

    private 
    def user_params 
     params.require(:user).permit(:email, :password, :password_confirmation, :spree_role_ids, :name, :surname, :birthdate) 

    end 

    end 
    end 
end 
+1

Я думаю, если вы уже добавили эти 3 поля пользователя разрешены атрибуты в конфигурации, дон не нужно переопределять пользовательский контроллер, потому что он уже использует разрешенные_услуги. – Moh

+0

Да, но для дополнительных полей, таких как имя и т. Д., Он переопределяет пользовательский контроллер или в любом месте в инициализаторе, у которого есть дополнительные поля, такие как: Spree :: PermitedAttributes.user_attributes <<: name – shoaib

ответ

1

Вы Брус Asign ролей администратора любой пользователь с лицевой стороны. Пожалуйста, зарегистрируйтесь для входа пользователя из внешнего интерфейса и измените его с сервера.

+0

Я только что создал нового пользователя admin и ввел администратор без каких-либо проблем. Не знаю, почему мой существующий администратор потерял свои привилегии. – ChrisEstanol

1

Когда вы регистрируете пользователя с внешнего интерфейса, это простой пользователь, он не администратор или у него нет прав администратора, почему вы столкнулись с этой проблемой.

Если вы хотите создать пользователя, у которого есть доступ администратора, вы просто заходите на панель администратора и предоставляете разрешения этим пользователям.

Это команда по умолчанию для создания администратора, запустите эту команду в консоли

bundle exec rake spree_auth:admin:create 

Благодаря

 Смежные вопросы

  • Нет связанных вопросов^_^