我想为Devise编写一个扩展,允许您使用parse_resource作为数据存储区(而不是ActiveRecord).parse_resource是Parse.com的REST api的Ruby包装器.它的界面与ActiveRecord几乎相同,并且是ActiveModel投诉.因此,Devise的扩展似乎可能不需要太多的非样板.
但是,我找不到任何教程.我所依赖的只是其他扩展的来源.从MongoMapper扩展,我认为有两个主要部分:
发电机(不是很需要)
在这里你覆盖DeviseGenerator#(generate_model|inject_devise_content|replace_default_devise_orm)方法.
"胆量 "(非常需要)
我不太确定这里发生了什么.似乎有很多样板,有一些自定义类型转换,在底部有一个声明,我们将使用此扩展而不是默认的ORM.
这就是它的全部吗?我错过了什么?有人可以更详细地解释"胆量"中发生的事情吗?
是否有任何简单的lint测试可以确保与Devise完全兼容?