def new
before_filter do
redirect_to "/" unless current_admin || current_company
flash[:notice] = 'You dont have enough permissions to be here' unless current_admin || current_company
end
CODE CODE CODE
end
def edit
before_filter do
redirect_to "/" unless current_admin.id = 5
flash[:notice] = 'You dont have enough permissions to be here' unless current_admin || current_company
end
CODE CODE CODE
end
Это код, который я хочу сделать, но я не могу понять, как это сделать правильно. Я хочу добиться применения правила before_filter для каждого из моих действий. Так что, возможно, пользователь может использовать действие INDEX, но не действие EDIT и т. Д. Я знаю, что метод before_filter запускается один раз, и я не могу запустить 4 before_filters, я просто даю ссылку на мой плохой английский.Rails before_filter для определенных действий в контроллере
Вы должны знать, что я использую Devise для методов current_admin и current_company. Мне нужно применить различные фильтры (если admin или if company.id = X) и другие действия.
Заранее спасибо, я довольно застрял здесь. Любая помощь будет оценена по достоинству.
Большое спасибо это было именно то, что мне было нужно. –
Если честно. Я не знал, что ваш путь также приемлем. – Hauleth
В Rails 4+ используйте 'before_action' вместо' before_filter'. –