Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails 4 app ActiveRecord::MigrationProxy设计3迁移错误_Ruby On Rails_Migrate - Fatal编程技术网

Ruby on rails Rails 4 app ActiveRecord::MigrationProxy设计3迁移错误

Ruby on rails Rails 4 app ActiveRecord::MigrationProxy设计3迁移错误,ruby-on-rails,migrate,Ruby On Rails,Migrate,我正在使用ssh在vps上部署我的rails 4应用程序,运行时 bundle exec rake db:migrate RAILS_ENV=production 这就是我得到的: [root@georgigeorgiev public_html]# bundle exec rake db:migrate RAILS_ENV=production -- t() -- t() rake aborted! ActiveRecord::MigrationProxy#disable_ddl_trans

我正在使用ssh在vps上部署我的rails 4应用程序,运行时

bundle exec rake db:migrate RAILS_ENV=production
这就是我得到的:

[root@georgigeorgiev public_html]# bundle exec rake db:migrate RAILS_ENV=production
-- t()
-- t()
rake aborted!
ActiveRecord::MigrationProxy#disable_ddl_transaction delegated to migration.disable_ddl_transaction, but migration is nil: #<struct ActiveRecord::MigrationProxy name="DeviseCreateUsers", version=20140217200926, filename="/home/bboyratings/public_html/db/migrate/20140217200926_devise_create_users.rb", scope="">
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/gems/activerecord-4.0.0/lib/active_record/migration.rb:712:in `rescue in disable_ddl_transaction'
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/gems/activerecord-4.0.0/lib/active_record/migration.rb:708:in `disable_ddl_transaction'
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/gems/activerecord-4.0.0/lib/active_record/migration.rb:1012:in `use_transaction?'
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/gems/activerecord-4.0.0/lib/active_record/migration.rb:922:in `rescue in block in migrate'
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/gems/activerecord-4.0.0/lib/active_record/migration.rb:919:in `block in migrate'
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/gems/activerecord-4.0.0/lib/active_record/migration.rb:916:in `each'
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/gems/activerecord-4.0.0/lib/active_record/migration.rb:916:in `migrate'
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/gems/activerecord-4.0.0/lib/active_record/migration.rb:764:in `up'
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/gems/activerecord-4.0.0/lib/active_record/migration.rb:742:in `migrate'
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/gems/activerecord-4.0.0/lib/active_record/railties/databases.rake:42:in `block (2 levels) in <top (required)>'
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/bin/ruby_executable_hooks:15:in `eval'
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/bin/ruby_executable_hooks:15:in `<main>'
Tasks: TOP => db:migrate
(See full trace by running task with --trace)
[root@georgigeorgievpublic_html]#bundle exec rake db:migrate RAILS_ENV=production
--t()
--t()
雷克流产了!
ActiveRecord::MigrationProxy#禁用委托给迁移的ddl_事务。禁用ddl_事务,但迁移为零:#
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/gems/activerecord-4.0.0/lib/active_record/migration.rb:712:in“rescue in disable_ddl_transaction”
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/gems/activerecord-4.0.0/lib/active\u record/migration.rb:708:in'disable\u ddl\u transaction'
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/gems/activerecord-4.0.0/lib/active\u record/migration.rb:1012:在“使用事务”中
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/gems/activerecord-4.0.0/lib/active_record/migration.rb:922:in“migrate中的块中救援”
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/gems/activerecord-4.0.0/lib/active_record/migration.rb:919:in'block in migrate'
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/gems/activerecord-4.0.0/lib/active_record/migration.rb:916:in'each'
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/gems/activerecord-4.0.0/lib/active_record/migration.rb:916:in'migrate'
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/gems/activerecord-4.0.0/lib/active_-record/migration.rb:764:in'up'
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/gems/activerecord-4.0.0/lib/active\u record/migration.rb:742:in'migrate'
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/gems/activerecord-4.0.0/lib/active_record/railties/databases.rake:42:in'block(2层)in'
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/bin/ruby可执行文件挂钩:15:in'eval'
/usr/local/rvm/gems/ruby-2.0.0-p451@rails4/bin/ruby\u可执行文件\u挂钩:15:in`'
任务:TOP=>db:migrate
(通过使用--trace运行任务查看完整跟踪)
还有我的设计迁移文件:

class DeviseCreateUsers < ActiveRecord::Migration
   t.has_attached_file :avatar  
def change
    create_table(:users) do |t|
      ## Database authenticatable
      t.string :email,              :null => false, :default => ""
      t.string :encrypted_password, :null => false, :default => ""

      ## Recoverable
      t.string   :reset_password_token
      t.datetime :reset_password_sent_at

      ## Rememberable
      t.datetime :remember_created_at

      ## Trackable
      t.integer  :sign_in_count, :default => 0
      t.datetime :current_sign_in_at
      t.datetime :last_sign_in_at
      t.string   :current_sign_in_ip
      t.string   :last_sign_in_ip

      ## Confirmable
      # t.string   :confirmation_token
      # t.datetime :confirmed_at
      # t.datetime :confirmation_sent_at
      # t.string   :unconfirmed_email # Only if using reconfirmable

      ## Lockable
      # t.integer  :failed_attempts, :default => 0 # Only if lock strategy is :failed_attempts
      # t.string   :unlock_token # Only if unlock strategy is :email or :both
      # t.datetime :locked_at

      ## Token authenticatable
      # t.string :authentication_token


      t.timestamps
    end

    add_index :users, :email,                :unique => true
    add_index :users, :reset_password_token, :unique => true
    # add_index :users, :confirmation_token,   :unique => true
    # add_index :users, :unlock_token,         :unique => true
    # add_index :users, :authentication_token, :unique => true
  end
end
classdeveliecCreateUsersfalse,:default=>
t、 字符串:加密密码,:null=>false,:default=>
##可恢复
t、 字符串:重置密码\u令牌
t、 日期时间:重置密码发送时间
##难忘的
t、 datetime:记住在
##可追踪
t、 整数:计数中的符号,默认值=>0
t、 日期时间:当前登录时间
t、 日期时间:上次登录时间
t、 字符串:ip中的当前\u符号\u
t、 字符串:ip中的最后\u签名\u
##可证实
#t.string:确认令牌
#t.datetime:已确认
#t.datetime:确认发送至
#t.string:未确认的电子邮件#仅当使用可再确认
##可锁
#t.integer:failed_尝试,:default=>0#仅当锁定策略为:failed_尝试时
#t.string:unlock_token#仅当解锁策略为:email或:两者皆有时
#t.datetime:locked_在
##可认证令牌
#t.string:authentication\u令牌
t、 时间戳
结束
添加索引:users,:email,:unique=>true
添加索引:users,:reset\u password\u token,:unique=>true
#添加索引:users,:confirmation\u token,:unique=>true
#添加索引:users,:unlock\u token,:unique=>true
#添加索引:users,:authentication\u token,:unique=>true
结束
结束
谢谢

删除

t.has_attached_file :avatar
来自移民

如果您使用
回形针
上传图像(用于字段
化身
),则在迁移中添加以下行:

class DeviseCreateUsers < ActiveRecord::Migration
  def change
    create_table(:users) do |t|
      ...
      t.attachment :avatar
      ...
    end
    ...
  end
end
classdeveliecCreateUsers
在此之后,执行bundle exec rake db:migrate RAILS\u ENV=production