Они оба только работа для односимвольных критериев поиска...
countOccurences("the", "the answer is the answer");
int countOccurences(string needle, string haystack)
{
return (haystack.Length - haystack.Replace(needle,"").Length) / needle.Length;
}
может оказаться лучше для более длинных игл...
, Но должен быть более изящный путь. :)
rake db: migrate: redo VERSION = xxxxxxx
, но это запустит вниз
, а затем вверх
шаг. Вы можете сделать это вместе с временным комментированием шага вниз.
rake db:migrate:up VERSION=1234567890
аналогично rake db: migrate: down
, чтобы остановить конкретную миграцию вниз. Вы можете получить список доступных задач с рейком с помощью rake -T
.
Должен быть способ запустить класс миграции через консоль. Кажется, мне не удается распознать код миграции.
Однако, как указано в комментариях, предпочтительно выполнять миграции по порядку. Используйте:
rake db:migrate VERSION=##########
Скопируйте и вставьте свой код при миграции в скрипт / консоль?
Мне пришлось выполнить одну миграцию, которая изменилась и которую нужно было повторно запустить независимо от всех других миграций. Запустите консоль и сделайте следующее:
>> require 'db/migrate/your_migrations.rb'
=> ["YourMigrations"]
>> YourMigrations.up
=> etc... as the migration runs
>> YourMigration.down
Более полезно это можно было бы поместить в задачу rake и т. д.