2011-09-23 76 views
0

去年夏天我在rails项目上使用了meta_where,它工作正常。然而,尝试使用屏幕共享网站“join.me”在远处建立一个rails项目,当代码到达使用meta_where(“matches”)的第一行时,出现错误。 我已经把“宝石‘meta_where’”在Gemfile中和“包安装”给出了错误:meta_where代码未被识别

捆扎机找不到兼容版本的宝石“的ActiveRecord”: 在Gemfile中:

 meta_where depends on 

ActiveRecord的(〜> 3.0.0.rc2)

的ActiveRecord(3.1.0)

,然而当我用宝石服务器,检查已安装的宝石的网页上有2个版本的ActiveRecord的(3.0.9和3.1.0)和meta_wh列出了ere-1.0.4。 看起来代码在错误的目录中,但这只是一个疯狂的猜测。有什么问题? 谢谢, Barney

回答

0

问题是,meta_where取决于Rails 3.0(不是3.1)。你使用rvm吗?你应该创建一个rails 3.0项目,如果你需要meta_where。如果你使用RVM,您可以简单地创建另一个宝石,和

rvm gemset create rails30 
rvm gemset use rails30 
gem install bundler 
gem install rails -v=3.0.10 

然后创建一个Rails 3.0项目

rails new my_project 

+0

你好玛丽安,系统管理员设置的红宝石并为我的轨道环境和计划是复制我的代码。我没有想到在Rails版本中寻找差异。 1)他是否必须删除Rails并重新加载旧版本的Rails? 2)我不知道rvm。我会查找它。 – user32848

+0

如果这是一台没有其他rails应用程序运行的生产机器,最简单的方法可能是删除所有版本的rails gem并安装rails 3.0.10,但是rvm值得研究! –

+0

谢谢,玛丽安,我会在星期一看看这两件事情。巴尼 – user32848