ruby-on-rails – 我需要做些什么才能使activerecord-import工作?

我正在尝试使用activerecord-import,但我似乎无法让我的应用程序识别它的存在.

我明白了

undefined method `supports_import?' for #<Class:...>

要么

undefined method `import' for #<Class:...>

不管我做什么.我一直在谷歌搜索这几天,并尝试我能想到的一切

当我们使用rails 2.3.5和ar-extensions时,它工作正常,但是自从升级到rails 3.2后它就被打破了.

每个人都说解决方案是使用activerecord-import,但我似乎不知道如何做到这一点.我已经安装了gem – 我相信我的ActiveRecord版本的正确版本 – 我已经在我的代码中需要它,但是我必须要做其他一些事情.

我在我的Gemfile中有这个:

gem 'activerecord-import',"~> 0.3.0"

这在我的代码中:

require 'activerecord-import'

这是我的宝石清单:

$gem list

*** LOCAL GEMS ***

actionmailer (3.2.13)
actionpack (3.2.13)
active_utils (2.0.0,1.0.5)
activemerchant (1.38.1,1.37.0,1.34.1)
activemodel (3.2.13)
activerecord (3.2.13)
activerecord-import (0.3.1)
activeresource (3.2.13)
activesupport (3.2.13)
acts_as_tree (1.1.0)
arel (3.0.2)
builder (3.0.4)
bundler (1.2.1)
capistrano (2.15.5)
ckeditor (4.0.6)
climate_control (0.0.3)
cocaine (0.5.1)
coffee-rails (3.2.2)
coffee-script (2.2.0)
coffee-script-source (1.6.3)
composite_primary_keys (5.0.13)
dbf (2.0.6)
erubis (2.7.0)
exception_notification (3.0.1)
execjs (2.0.1,1.4.0)
fastercsv (1.5.5)
friendly_id (4.0.10.1)
highline (1.6.19)
hike (1.2.3)
i18n (0.6.1)
journey (1.0.4)
jquery-rails (3.0.4)
json (1.8.0)
libv8 (3.16.14.3 x86_64-linux,3.11.8.17 x86_64-linux)
mail (2.5.4)
mime-types (1.25,1.23)
mini_magick (3.6.0)
mini_portile (0.5.1)
money (5.1.1)
multi_json (1.8.0,1.7.9,1.7.7)
MysqL2 (0.3.13)
net-scp (1.1.2)
net-sftp (2.1.2)
net-ssh (2.6.8)
net-ssh-gateway (1.2.0)
newrelic_rpm (3.6.7.152)
nokogiri (1.6.0,1.5.10)
orm_adapter (0.5.0)
paperclip (3.5.1,3.5.0)
polyglot (0.3.3)
rack (1.4.5)
rack-cache (1.2)
rack-ssl (1.3.3)
rack-test (0.6.2)
rails (3.2.13)
railties (3.2.13)
rake (10.1.0,0.9.2.2)
rdoc (3.12.2)
ref (1.0.5)
rmagick (2.13.2)
rubygems-bundler (1.1.0)
rvm (1.11.3.5)
sass (3.2.10,3.2.9)
sass-rails (3.2.6)
sprockets (2.2.2)
sqlite3 (1.3.8)
subexec (0.2.3)
therubyracer (0.12.0,0.11.4)
thor (0.18.1)
tilt (1.4.1)
tinymce_fm (0.0.2)
treetop (1.4.15,1.4.14)
tzinfo (0.3.37)
uglifier (2.2.1,2.1.2)
will_paginate (3.0.4)
zip (2.0.2)

解决方法

答案是,您需要采取一些特殊步骤来使用这个特定的宝石.
require "activerecord-import/base"
  ActiveRecord::Import.require_adapter('MysqL2')

这是在the github wiki page for activerecord-import发现的

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...