Я пытаюсь сделать так, чтобы пользователи могли войти в систему как можно быстрее, поэтому я хочу, чтобы пользователи могли входить в систему и создавать записи в той же форме.Аутентификация пользователя в отдельном контроллере с Restful_authentication
Возможно ли аутентифицировать пользователя с плагином restful_authentication с любого контроллера, вызвав вызов метода create в контроллере сеанса и вернуть аутентифицированного пользователя? Кажется, что это можно сделать легко, но я просто не могу понять, как это сделать в Rails.
Может быть что-то вроде:
#Records Controller def create if params[:login] && params[:password] #This method would call /session/ and pass the login/password params user = authenticate_user(params[:login'], params[:password]) end @record = Record.new(params[:record]) @record.user = user if @question.save && user flash[:notice] = 'Record was successfully created.' redirect_to(@record) end end
Любые идеи о том, как сделать это будет оценен по достоинству!
Найджел Торн (http://stackoverflow.com/users/23963/nigel-thorne) предположил, что отказ аутентификации должен действительно вернуть HTTP 401 (Несанкционированное), а не каких-либо ошибок в @stack. Он тоже прав :-) –
Или, в случае с не-XML, перенаправляйтесь на страницу входа в систему. –