to post messages and comments.

Есть приложение на рельсах.
Есть обычный кондовый логин из вебморды. С ним всё понятно, девайз и т.п.
Сессия хранится в кукисах.
А теперь внимание.
Есть необходимость логинить пользователей из внешних приложений, но не через обычный девайзовский sessions#create а ещё один сторонний контроллер.
И тут начинаются кровь, кишки и прочее, т.к. как только мы логинимся со стороны (но в том же броузере, где у нас уже открыто основное приложение), основное приложение разлогинивается, т.к. кука была модифицирована.

Дорогие знатоки: можно ли мне для разных скоупов использовать разные куки? Это бы оч. сильно помогло. Гуглить, видимо, умею плохо, т.к. не нашёл.

Жуйка, второтег неосяливаем. Не нужно писать простой аналог. Есть красивое решение для админ-панелей: HTTP Basic Authentication (http://asciicasts.com/episodes/270-authentication-in-rails-3-1).
#следующий пост будет про зверскую заёбанность

Хочу перенаправление на предыдущую страницу после авторизации в собственноручно написанном методе. Пока это выглядит как:
def authenticate_admin!
sign_in_and_redirect(:user, request.url) unless current_user && current_user.email == "[email protected]"
end
и ещё не работает. Но это красиво! Осталось узнать что такое scope в их понимании.

Вообще красивый доклад о авторизации через соцсети на рельсах для блондинок. Там не только OmniAuth + Devise, но это реально один из самых умных и простых решений для такого типа авторизации без дополнительного геммороя. В общем вот видео univertv.ru

Юзать Devise когда только можно. Если уж писец как надо реализовать логику самому, и прикрутить своих кундштюков — то AuthLogic. И последнее: если работать не с ActiveRecord, то в жопу AuthLogic, который кроме нее ничего не умеет.

Если вы хотите пользовать HAML или Slim вместе с Devise — то вот тут есть как конвертировать views github.com По умолчанию, Devise отключили поддержку HAML. С помощью указанной утилиты html2haml можно похоже и конвертить и HTML5Boilerplate шаблоны, написанные на базе ERB. (:

Блять. Сижу втыкаю в авторизацию с помощью твиттера, да фейсбука. Думаю, как это к рельсам привязывать. А оно вон оно как оказывается начальник. Ставишь старый добрый Devise, который умеет OmniAuth, и помимо твиттера, контакта, лицокниги, в твоем распоряжении еще 100500 сервисов, через которые можно авторизовать пользователей. Остается другой вопрос... А что делать, если к примеру, пользователь авторизовался при помощи Twitter, в другой раз он хочет через лицокнигу — как определить, что это один и тот же пользователь?

Все таки без костылей не обошлось. Для всего Devise нужен один layout. Для редактирования профиля другой, плюс к нему еще и редирект на него же после изменений (типа в настройках все это). Чтобы сменить layout — телодвижений немного. А вот чтобы сделать нужный редирект — нужно наследовать весь контроллер. >_< либо иметь его копию среди своих контроллеров >_< фак мой мозг

у меня сейчас будет нервный срыв. Как этот гребаный Devise заставить сука рендерить им же падла сгенереные шаблоны для разнх моделей, а не из папки своей установки >_< сука, ебаный идиотизм падла >_< матов и нервов не хватает

Какая то неведомая фигня. Сколько ставил — работает. Тут поставил монгоид, ставлю devise — имя базы данных должно быть строкой или символом. Че за неведомая фигня О_о

Продолжаю познавать темную сторону силы. Печеньки все таки есть. Джанга говорите, плагины... Посмотрел на плагин авторизации для рельсов devise, и понял, что из виденного мной питонячего аналогом возможностей может быть только инструментарий repoze.bfg. Знаменитая django-registration и django.contrib.auth — это жалкие недочихи. Сцуко. Теперь я понял, чем рельсовики завлекают на темную сторону силы.