2011-03-15 106 views
1

我有遷移文件名稱。ROR遷移文件名

001_smomething 002_blah 003_bookblah 20110022211973_smoething

將這些在運行什麼命令?

回答

1

在幕後,文件名開頭的數字部分被轉換爲整數。然後,遷移文件按版本排序。因此,將在同一序列像你描述的運行:

001_smomething 
002_blah 
003_bookblah 
20110022211973_smoething 

你可以看一下它是如何工作的source code。以下是重要部分:

# Get the number part as version. 
version, name = file.scan(/([0-9]+)_([_a-z0-9]*).rb/).first 

# Convert version to integer. 
version = version.to_i 

# Sort the files by version. 
migrations = migrations.sort_by { |m| m.version } 
0

他們將在這個順序運行:

  1. 001_smomething
  2. 002_blah
  3. 003_bookblah
  4. 20110022211973_smoething

因爲鐵軌時執行遷移按名稱排序文件。