Имена файлов миграции ROR - PullRequest
1 голос
/ 15 марта 2011

У меня есть имя файла миграции, как.

001_smomething 002_blah 003_bookblah 20110022211973_smoething

В каком порядке они будут работать?

Ответы [ 2 ]

1 голос
/ 15 марта 2011

За сценой числовая часть в начале имени файла преобразуется в целое число. Затем файлы миграции сортируются по версии. Так что он будет работать в той же последовательности, как вы описали:

001_smomething
002_blah
003_bookblah
20110022211973_smoething

Вы можете посмотреть, как это работает с исходным кодом . Вот важная часть:

# 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 голосов
/ 15 марта 2011

Они будут работать в следующем порядке:

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

потому что рельсы при выполнении миграций сортируют файлы по имени.

...