ruby - rake db :migrate returns with error

标签 ruby ruby-on-rails-3 ruby-on-rails-4 ruby-on-rails-3.2 syntax-error

我运行了rake db:migrate,并在终端中遇到此错误

SQLite3::SQLException: no such table: admin_users: ALTER TABLE "admin_users" ADD "username" varchar(25)/Users/IsaiahxD/.rvm/gems/ruby-2.2.1/gems/sqlite3-1.3.10/lib/sqlite3/database.rb:91:in `initialize'
/Users/IsaiahxD/.rvm/gems/ruby-2.2.1/gems/sqlite3-1.3.10/lib/sqlite3/database.rb:91:in `new'
/Users/IsaiahxD/.rvm/gems/ruby-2.2.1/gems/sqlite3-1.3.10/lib/sqlite3/database.rb:91:in `prepare'
/Users/IsaiahxD/.rvm/gems/ruby-2.2.1/gems/sqlite3-1.3.10/lib/sqlite3/database.rb:134:in `execute'
/Users/IsaiahxD/.rvm/gems/ruby-2.2.1/gems/activerecord-4.2.3/lib/active_record/connection_adapters/sqlite3_adapter.rb:329:in `block in execute'
/Users/IsaiahxD/.rvm/gems/ruby-2.2.1/gems/activerecord-4.2.3/lib/active_record/connection_adapters/abstract_adapter.rb:473:in `block in log'

我调查了我的alter_user.rb文件class AlterUsers < ActiveRecord::Migration
这是文件20150825065823_alter_users.rb
def up
  rename_table("users", "admin_users.broken")
  add_column("admin_users", "username", :string, :limit => 25, :after => "email" )
  change_column("admin_users", "email", :string, :limit => 100)
  rename_column("admin_users", "broken", "hashed_password")
  puts "*** Adding an index is next ***"
  add_index("admin_users", "username")
end

def down
  remove_index("admin_users", "username")
  rename_column("admin_users", "hashed_password", "password")
  change_column("admin_users", "email", :string, :default => "" , :null => false)
  remove_column("admin_users", "username")
  rename_table("admin_users", "users")
end

最佳答案

#up方法中,您要向admin_users添加列,但尚未定义该表。

代替:
rename_table("users", "admin_users.broken")
尝试:
rename_table("users", "admin_users")

关于ruby - rake db :migrate returns with error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32315636/

相关文章:

ruby-on-rails - 弃用警告:ActionController::TestCase HTTP 请求方法将只接受关键字参数

ruby-on-rails - Rails 模型单一化无法正常工作

ruby - 找不到魔杖/MagickWand.h

sql - 将 UNION 与 Sequel 结合使用

ruby-on-rails - 在 Rails 3 中弃用的继承资源......响应者

devise - 没有将 Symbol 隐式转换为 Integer

ruby-on-rails-4 - RSpec 将失败的测试标记为已跳过

ruby-on-rails-3 - 从不同的关联模型访问属性 rails 3

sql - 如何使用 ActiveRecord 和 Postgresql 按列选择唯一记录

javascript - EOF 错误 javascript_include_tag Rails 4