-1

我输入了 ruby​​ on rails 的 cmd 命令 rails generate controller user name:string email:string 当我输入 rake db:migrate 时,它​​会显示如下错误:C:\Sites\twinkle>rake db:migrate (在 C:/Sites/twinkle) == CreateMembers: 迁移 ===================================== ============= -- create_table(:members) rake 中止!发生错误,此迁移和所有后续迁移均已取消:

 SQLite3::SQLException: table "members" already exists: CREATE TABLE "members" ("
  id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255), "email" var
  char(255), "created_at" datetime, "updated_at" datetime)

我应该怎么办?

4

3 回答 3

3

此错误意味着您的数据库中已经有一个名为“members”的表。删除您的Members表,然后重试。Rails 无法“覆盖”该表,因此您必须创建一个新表。

你可以像这样放下你的桌子:

  1. $rails console

  2. ActiveRecord::Migration.drop_table(:members)

现在你可以rake db:migrate再次运行。它现在可以工作了。

于 2013-07-24T07:08:21.877 回答
0

请参阅此Rails DB 迁移 - 如何删除表?删除现有表

于 2013-07-24T07:06:52.107 回答
0

似乎表members已经存在。

尝试从数据库中删除表

于 2013-07-24T07:02:24.260 回答