Я всегда использовал Authlogic в Rails 2.3, но теперь, когда я использую Rails 3, я думаю, что могу попробовать новое решение для проверки подлинности.
Как Devify сравнивается с Authlogic? В чем их отличия?
Я всегда использовал Authlogic в Rails 2.3, но теперь, когда я использую Rails 3, я думаю, что могу попробовать новое решение для проверки подлинности.
Как Devify сравнивается с Authlogic? В чем их отличия?
Я использовал их оба, но не широко. В моем последнем проекте я дал Девизу выстрел. Вместо этого я использовал Rails-Warden.
Devise - это полная система проверки подлинности, построенная поверх Warden. Чтобы настроить внешний вид, вы используете генераторы, а затем редактируете полученные просмотры. Его маршруты и логика просмотра жестко закодированы. Например, успешный вход в систему всегда приведет вас к /session/new? Это был разбойник или я, я хотел, чтобы мои пользователи закончили "приветствовать/индексировать". Разработчик не так хорошо документирован или интуитивно понятен как authlogic.Warden - это среда промежуточного программного обеспечения. Разработчик основан на. В нем есть плагины для многих схем аутентификации в Интернете (fb, openid, oauth), и легко создать плагин для вашей собственной аутентификации. Он не имеет интерфейса, и документы не так хороши, как authlogic.
Я закончил работу с рельсовым начальником, потому что мне нужно было подключить несколько пользовательских схем аутентификации.
Также см. ниже ответ OmniAuth, что я использую в 2012 году.
для разработки, если вы хотите отправить успешный логин в "приветствовать/индексировать", вы добавляете в routes.rb
namespace :user do
root :to => "welcome#index"
end
как описано https://github.com/plataformatec/devise/wiki/How-To:-Redirect-to-a-specific-page-on-successful-sign-in
лично, мне нравится разрабатывать. он считает, что это здорово, и я думаю, вы можете назвать это "упрямым", но эти мнения можно легко перезаписать.
Я обнаружил, что Devise слишком упрям для меня. Если вы просто хотите принять то, как он делает все из коробки, это хорошо и легко. У меня были некоторые специфические требования и я обнаружил, что пишу вещи, чтобы обойти Devise, поэтому закончил срывать его и вместо этого обновил Authlogic до Rails3.
Как и исходный вопросник, я тоже всегда использовал AuthLogic в Rails 2.3 дня, но решил использовать Devise, когда AuthLogic не был готов к Rails 3.1 (когда он был на этапе RC). В целом я сделал Devise делать то, что я хочу, но я недоволен и желаю, чтобы я не внес изменений.
Пользовательская аутентификация кажется простой на первый взгляд и идеально подходит для "компоновки", но так много раз вы хотите, чтобы пользователь полностью общался с вашим сайтом, прежде чем требовать входа в систему, а Devise делает это сложнее.
Да такие функции, как put after_sign_in_path_for/after_sign_up_path_for в приложении Application Controller, но эти функции действительно предназначены не для того, чтобы возвращать путь, а если вы используете Devise, вы обнаружите, что вставляете в них большие блоки кода. Он работает, но у меня есть собственный пользовательский контроллер для обработки связанных с пользователем действий, для меня более элегантный.
Если вам нужна множественная аутентификация OAuth для Twitter, Facebook, LinkedIn и Google, вы можете использовать драгоценный камень OmniAuth вместе с Authlogic. Легко понять и дает вам полный контроль над тем, что происходит, когда пользователи аутентифицируются с разных социальных сайтов, что вы делаете в authorizations_controller.rb.
Мне нравится Devise. Вы также можете использовать OmniAuth с Devise. Я думаю, что проект Devise очень активен, и он имеет большую поддержку в Интернете.