Rails中的模型命名空间

时间:2013-10-24 05:31:16

标签: ruby-on-rails ruby devise mongoid

我想有这样的模型用户:

class User
  include User::Devise # or better, include Devise

  # more code 
end

我正在使用mongoid,这就是User没有继承ActiveRecord :: Base的原因。

但我想在另一个文件app/models/user/devise.rb中定义我的设计配置:

module User::Devise

  def self.included(base)
    base.class_eval do
      # Include default devise modules. Others available are:
      # :confirmable, :lockable, :timeoutable and :omniauthable
      devise :database_authenticatable, :registerable,
        :recoverable, :rememberable, :trackable, :validatable

# more devise stuff

我怎样才能实现我的目标?

更新

我可以在app/models/devise_user.rb

中写这篇作品
module DeviseUser
  # code here

我认为这个选项足够好,但让app/models/user/devise.rb更有条理。

0 个答案:

没有答案