Я хотел бы написать расширение для Devise, которое позволит вам использовать parse_resource в качестве хранилища данных (в отличие от ActiveRecord). parse_resource - это обертка Ruby для REST api Parse.com. Его интерфейс практически такой же, как у ActiveRecord, и является жалобой на ActiveModel. Из-за этого кажется возможным, что расширение для Devise может не требовать слишком много не-boilerplate.
Однако я не могу найти никаких руководств. Все, на что мне приходится полагаться, это исходные тексты других расширений. Из расширения MongoMapper я понял, что есть две основные части:
Генераторы (не совсем обязательно)
Здесь вы перезаписываете DeviseGenerator#(generate_model|inject_devise_content|replace_default_devise_orm)
методы.
"Кишки" (очень нужны)
Я не совсем понимаю, что здесь происходит. Кажется, что здесь много шаблонов, с небольшим количеством пользовательского приведения типов, а внизу есть заявление, что мы будем использовать это расширение вместо ORM по умолчанию.
Это все, что здесь есть? Что я упустил? Может ли кто-нибудь объяснить, что происходит в "внутренностях" более подробно?
Есть ли какие-нибудь простые тесты, которые нужно выполнить, чтобы убедиться в полной совместимости с Devise?