2012-10-07 86 views
0

我已经在新安装的linux中从github获取了2个我的应用程序(它们一直在其他linux环境中工作)。我也安装了mysql,nodejs。我在rails中创建了一个测试应用程序,并测试了它的工作。但是我克隆的应用程序在运行rake db时发生错误:migrate。Rails,耙分贝:迁移github克隆应用程序错误

在APP1错误:

耙分贝:迁移 == CreateItems:迁移========================= =========================== - create_table(:items) - > 0.0025s == CreateItems:migrated(0.0027s) ===========================================

== AddDataToTableItems :迁移============================================ rake中止!发生 一个错误,这和所有后来迁移取消:

未定义的方法'制造商”的#

误差在APP 2

耙分贝:迁移 耙中止! 未定义的方法`[] =”的零:NilClass

虽然两个错误是不同的,他们应该被有关(如应用在工作(通过运行带有--trace任务查看完整的跟踪)其他环境)。我因半天的问题而陷入困境。有关相同的任何输入?

PS:是的应用程序迁移文件内容如下: http://dl.dropbox.com/u/18367173/migrate_app2.tar.gz http://dl.dropbox.com/u/18367173/migrate_app1.tar.gz

+0

你可以发布迁移的地方吗? – Agis

+0

上传迁移文件: http://dl.dropbox.com/u/18367173/migrate_app1.tar.gz http://dl.dropbox.com/u/18367173/migrate_app2.tar.gz – Himz

回答

0

我相信你想添加的东西在创建表格列之前在制造商字段中。

确保首先运行所有真正的迁移(修改模式的迁移),并且只有在运行那些在数据库中发布数据的迁移之后。顺便说一下,您不应该使用迁移来在您的应用中发布示例数据,您应该为此数据库种子使用rake任务。

+0

谢谢。我在最后一次迁移中添加列(制造商)。但对于制造商领域,以前没有数据。所以它不应该抛出错误。 是的,计划将样本数据移动到种子。让我把数据放入种子并检查。 – Himz

+0

还有第二个应用程序的任何意见。所有的迁移都是独立的(并且没有种子数据)? 感谢您的帮助。 – Himz

+0

是的,请将Model.create放入db/seeds/rb中,并使用rake db:seed运行它们还请使用gui工具或命令行检查项目表并查看它具有的内容。 –