【发布时间】:2011-12-02 23:37:31
【问题描述】:
我想为 Devise 编写一个扩展,允许您使用 parse_resource 作为数据存储(而不是 ActiveRecord)。 parse_resource 是 Parse.com 的 REST api 的 Ruby 包装器。它的界面与 ActiveRecord 的几乎相同,并且是 ActiveModel 投诉的。因此,Devise 的扩展似乎不需要太多的非样板文件。
但是,我找不到任何教程。我所依赖的只是其他扩展的来源。从MongoMapper extension,我推测有两个主要部分:
-
The generators(不是必需的)
在这里你覆盖
DeviseGenerator#(generate_model|inject_devise_content|replace_default_devise_orm)方法。 -
The "guts"(非常需要)
我不太确定这里发生了什么。似乎有很多样板,带有一点自定义类型转换,并且在底部有一个声明,我们将使用这个扩展而不是默认的 ORM。
这就是全部吗?我错过了什么?谁能更详细地解释一下“胆量”中发生了什么?
是否有任何简单的 lint 测试可以运行以确保与 Devise 完全兼容?
【问题讨论】:
-
你有没有创造过这个或找到替代品?
标签: ruby-on-rails ruby devise mongomapper