Как отладить мои миграции с помощью ruby-debug в rails 3?
запуск rake db:migrate, похоже, не вызывает никаких команд отладчика, как в Rails 2. И rake db:migrate --debugger тоже не работает.
Спасибо.
Как отладить мои миграции с помощью ruby-debug в rails 3?
запуск rake db:migrate, похоже, не вызывает никаких команд отладчика, как в Rails 2. И rake db:migrate --debugger тоже не работает.
Спасибо.
Мне удалось отладить миграцию, выполнив следующие действия.
Добавьте ruby-debug в Gemfile
gem 'ruby-debug19'
В миграции добавьте require 'ruby-debug' и выполните debugger в строке, которую хотите остановить. Например
require 'ruby-debug'
class CreatePeople < ActiveRecord::Migration
def self.up
debugger
create_table :people do |t|
t.string :name
t.String :email
t.timestamps
end
end
def self.down
drop_table :people
end
end
затем запустите rake db:migrate или любую другую команду БД. Например
~/dev/ruby/migrate$ rake db:migrate
(in /Users/augusto/dev/ruby/migrate)
== CreatePeople: migrating ===================================================
/Users/augusto/dev/ruby/migrate/db/migrate/20110212134536_create_people.rb:7
create_table :people do |t|
(rdb:1) list
[2, 11] in /Users/augusto/dev/ruby/migrate/db/migrate/20110212134536_create_people.rb
2
3 class CreatePeople < ActiveRecord::Migration
4
5 def self.up
6 debugger
=> 7 create_table :people do |t|
8 t.string :name
9 t.String :email
10
11 t.timestamps
(rdb:1)