首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >祖先数据库:迁移

祖先数据库:迁移
EN

Stack Overflow用户
提问于 2012-01-12 07:27:39
回答 1查看 399关注 0票数 1

我正在尝试安装祖先gem,但我在使用rake db:migrate时遇到了问题。

我正在遵循先辈github页面上的说明。在我完成rails g migration add_ancestry_to_message ancestry:string之后,我正在编辑迁移文件(遵循railcast #262),如下所示:

代码语言:javascript
复制
class AddAncestryToMessage < ActiveRecord::Migration
  def self.up
    add_column :messages, :ancestry, :string
    add_index :messages, :ancestry
  end

  def self.down
    remove_index :messages, :ancestry
    remove_column :messages, :ancestry
  end
end

然后,当我运行rake db:migrate时,我得到以下错误:

代码语言:javascript
复制
==  AddAncestryToMessage: migrating ===========================================
-- add_column(:messages, :ancestry, :string)
rake aborted!
An error has occurred, this and all later migrations canceled:

SQLite3::SQLException: no such table: Shipmgr: ALTER TABLE "Message" ADD "ancestry" varchar(255)

Tasks: TOP => db:migrate

我已经在新创建的rails应用程序和现有的rails应用程序上尝试了这一点,但我仍然无法让它工作。有没有人对这个问题有什么建议?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-01-12 07:39:01

您应该尝试将迁移类名更改为复数形式(表)的'Messages':

代码语言:javascript
复制
class AddAncestryToMessages < ActiveRecord::Migration

或者,更准确地说,将迁移生成器命令更改为:

代码语言:javascript
复制
rails g migration add_ancestry_to_messages ancestry:string
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8828204

复制
相关文章

相似问题

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