Задать вопрос
@Dracontis
Java Developer, Django enthusiast

Active Admin. Как присваивать текущего пользователя записи при её создании?

Для фильтрации доступа использую Cancan:
scope_to :current_manager, :association_method => :blog_posts
  controller do
    private
    def current_manager
      unless can? :manage, :all
        current_user
      end
    end
  end


Побочным действием этого кода стало, что хоть администратор и может видеть все записи, но при добавлении им новой записи поле user_id остается пустым. Каким образом можно присвоить новой записи текущего пользователя, вне зависимости от прав доступа?
  • Вопрос задан
  • 3066 просмотров
Подписаться 2 Оценить Комментировать
Решения вопроса 1
sdevalex
@sdevalex
bafore_save в моделе…
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@solenko
Мне кажется, все-таки лучше переопределить create
что-то вроде
controller do
  create
    create! do |success, failure|
      if success
         # set current manager here

      end
    end
  end
end

Негоже модели знать от текущем пользователе.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
OTKLIK POWER Москва
от 80 000 до 150 000 ₽
Netwrk Буэнос-Айрес
от 5 000 до 7 500 $
от 6 000 до 8 000 $