2017-02-09 61 views
0

我有幾個遷移文件,由於某些原因,db:migrate任務只是忽略一個遷移文件。爲什麼Rails在運行`rake db:migrate`時會忽略遷移文件?

class Assets < ActiveRecord::Migration 
 
    def change 
 
    create_table :assets do |t| 
 
     t.string :title 
 
     t.string :file 
 
     t.string :description 
 

 
     t.timestamps null: false 
 
    end 
 
    end 
 

 

 
end

我已經試圖改變這種遷移的順序,以確保它需要它的創建表的任何其他遷移之前運行。

+1

你是什麼意思「改變這次遷移的順序」? –

+1

「rake db:migrate:status」的輸出是什麼? –

回答

0

這裏是耙命令的列表:

rake db:create   # Create the database from DATABASE_URL or config/database.yml for the current Rails.env (use db:create:all to create all dbs in the config) 
rake db:drop   # Drops the database using DATABASE_URL or the current Rails.env (use db:drop:all to drop all databases) 
rake db:fixtures:load # Load fixtures into the current environment's database 
rake db:migrate   # Migrate the database (options: VERSION=x, VERBOSE=false) 
rake db:migrate:status # Display status of migrations 
rake db:rollback  # Rolls the schema back to the previous version (specify steps w/ STEP=n) 
rake db:schema:dump  # Create a db/schema.rb file that can be portably used against any DB supported by AR 
rake db:schema:load  # Load a schema.rb file into the database 
rake db:seed   # Load the seed data from db/seeds.rb 
rake db:setup   # Create the database, load the schema, and initialize with the seed data (use db:reset to also drop the db first) 
rake db:structure:dump # Dump the database structure to db/structure.sql 
rake db:version   # Retrieves the current schema version number 

嘗試bundle exec rake db:drop:all這將刪除所有migrations等,嘗試重新建立你的表。

相關問題