Rails 3でruby-debugを使用して移行をデバッグするにはどうすればよいですか?
rake db:migrateを実行しても、Rails 2のようにデバッガコマンドがトリガーされないようです。また、rake db:migrate--debuggerも機能しません。
ありがとう。
Rails 3でruby-debugを使用して移行をデバッグするにはどうすればよいですか?
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
またはその他のdbコマンドを実行します。例えば
~/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)