Rails 4 - Pundit - политики не работают

Я пытаюсь понять, как использовать Pundit в моем приложении Rails 4.

У меня есть модель проекта с контроллером проектов, в котором есть новое действие:

def new
# a bunch of stuff in the new action that I don't think is very relevant here

end

Затем у меня есть политика проекта в папке политик, которая имеет:

def new?
        false
        # create?
    end

    def create?
        false

    end

Я ожидаю, что я не смогу ввести url/projects/new на своем веб-сайте, потому что политика не должна это разрешать. Но я могу, и форма рендерится, и я могу ее сохранить.

Кто-нибудь видит, что я сделал неправильно в настройке?


person Mel    schedule 02.07.2016    source источник


Ответы (1)


Несколько вещей, которые нужно проверить, потому что вы не упомянули их в своем вопросе:

  1. Добавьте include Pundit в контроллер

  2. Добавить authorize [model_instance] в действие new и действие create

Официальный https://github.com/elabs/pundit должен дать вам множество инструкций.

person kasperite    schedule 02.07.2016
comment
Спасибо, я не американизировал написание авторизации. - person Mel; 02.07.2016