我在rails命令rails上键入cmd of ruby生成控制器用户名:string email:string 一旦它在我输入rake db:migrate时创建它就会显示如下错误: C:\ Sites \ twinkle> rake db:migrate (在C:/ Sites / twinkle) == CreateMembers:迁移============================================= ===== - create_table(:members) 耙子流产了! 发生错误,此操作和所有后续迁移都已取消:
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)
我该怎么办?
答案 0 :(得分:3)
此错误表示您已在数据库中拥有一个名为“members”的表。删除Members
表格,然后重试。 Rails无法“覆盖”表格,因此您必须创建一个新表格。
你可以这样丢弃你的桌子:
$rails console
ActiveRecord::Migration.drop_table(:members)
现在您可以再次运行rake db:migrate
。它现在会起作用。
答案 1 :(得分:0)
似乎表格members
已经存在。
尝试从db
中删除表答案 2 :(得分:0)
请参阅此Rails DB Migration - How To Drop a Table?以删除现有表格