首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使印象派宝石适应蒙古

使印象派宝石适应蒙古
EN

Stack Overflow用户
提问于 2012-07-06 15:55:46
回答 1查看 640关注 0票数 1

我正在尝试将这个创业板,https://github.com/charlotte-ruby/impressionist改编成mongoid odm。

我已经看到了mongo_mapperhttps://github.com/tute/impressionist/commit/1c3f809da8ebd3ced8cb9bda8caee89012091a10的承诺。

这是mongoid的impression.rb模型:

代码语言:javascript
复制
class Impression
  include Mongoid::Document
  include Mongoid::Timestamps::Created
  field :impressionable_type, :type => String
  field :impressionable_id, :type => String
  field :user_id, :type => String
  field :controller_name, :type => String
  field :action_name, :type => String
  field :view_name, :type => String
  field :request_hash, :type => String
  field :ip_address, :type => String
  field :session_hash, :type => String
  field :message, :type => String
  field :referrer, :type => String
end

生成mongoid fine文件之后:

代码语言:javascript
复制
rails g impressionist --orm mongo_id
      invoke  mongo_id
      create  config/initializers/impression.rb

我试着运行服务器,并得到以下错误:

代码语言:javascript
复制
uninitialized constant Impressionist::Engine::MongoId (NameError)
    from /home/ubuntu/.rvm/gems/ruby-1.9.3-p125@rails32/gems/impressionist-1.1.1/lib/impressionist/engine.rb:11:in `block in <class:Engine>'

engine.rb文件中,我有:

代码语言:javascript
复制
require "impressionist"
require "rails"

module Impressionist
  class Engine < Rails::Engine
    initializer 'impressionist.model' do |app|
      require "#{root}/app/models/impressionist/impressionable.rb"
      if Impressionist.orm == :mongo_id
        require "impressionist/models/mongo_id/impression.rb"
        require "impressionist/models/mongo_id/impressionist/impressionable.rb"
        MongoId::Document.plugin Impressionist::Impressionable
      end
    end

    initializer 'impressionist.controller' do
      ActiveSupport.on_load(:action_controller) do
        include ImpressionistController::InstanceMethods
        extend ImpressionistController::ClassMethods
      end
    end
  end
end

第11行是MongoId::Document.plugin Impressionist::Impressionable

有人能帮忙吗?谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-07-06 17:50:26

在第11行

代码语言:javascript
复制
MongoId::Document.plugin Impressionist::Impressionable

应该是

代码语言:javascript
复制
Mongoid::Document.plugin Impressionist::Impressionable

注意Mongoid的大写。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11365676

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档