Ruby on rails 如何在Rails中调试gem?
我正在尝试启动我的rails服务器,但得到下面的错误跟踪 我已经注释掉了这里提到的一行:Ruby on rails 如何在Rails中调试gem?,ruby-on-rails,ruby,freetds,acts-as-audited,Ruby On Rails,Ruby,Freetds,Acts As Audited,我正在尝试启动我的rails服务器,但得到下面的错误跟踪 我已经注释掉了这里提到的一行: 4.2.0/lib/audited/auditor.rb:48:in `audited' from /home/david-vm/Documents/rails_projects/bane/app/models/user.rb:9:in `<class:User>' User.rb class User < ActiveRecord::Base # Includ
4.2.0/lib/audited/auditor.rb:48:in `audited'
from /home/david-vm/Documents/rails_projects/bane/app/models/user.rb:9:in `<class:User>'
User.rb
class User < ActiveRecord::Base
# Include default devise modules. Others available are:
# :confirmable, :lockable, :timeoutable and :omniauthable
devise :ldap_authenticatable, :registerable, :recoverable, :rememberable, :trackable, :validatable
after_destroy :ensure_an_admin_remains
before_create { generate_token(:auth_token) }
# Audit changes made except for the columns as specified below
audited except: [:last_seen_at, :sign_in_count, :last_sign_in_at, :last_sign_in_ip, :password_digest]
has_associated_audits
acts_as_tagger
acts_as_taggable_on :roles
# associations, methods, etc...
end
class用户
更新
原来这是一个DNS问题,所以即使我的database.yml没有更改,服务器名称也不再工作。刚刚添加了更新,以防有人遇到类似问题,可能值得检查一下。答案在堆栈跟踪中。它准确地告诉您系统中的哪个文件出错。事实上,该文件来自一个宝石,或生活在您的计算机的不同部分,是无关的
/home/david vm/.rvm/gems/ruby-2.3.0/gems/tiny_tds-0.7.0/lib/tiny_tds/client.rb:74:在“连接”中:在配置文件中找不到服务器名称(TinyTds::Error)
用编辑器打开该文件(或回溯中最合适的任何文件),在它爆炸的行(74)之前,在其中插入一个
binding.pry
(或byebug,或调试器,无论您使用什么)。然后重新启动应用程序并进行调试,就像它是应用程序中的文件一样 添加pry
gem,打开文件4.2.0/lib/audited/auditor.rb
进行编辑,并在异常位置前插入binding.pry
class User < ActiveRecord::Base
# Include default devise modules. Others available are:
# :confirmable, :lockable, :timeoutable and :omniauthable
devise :ldap_authenticatable, :registerable, :recoverable, :rememberable, :trackable, :validatable
after_destroy :ensure_an_admin_remains
before_create { generate_token(:auth_token) }
# Audit changes made except for the columns as specified below
audited except: [:last_seen_at, :sign_in_count, :last_sign_in_at, :last_sign_in_ip, :password_digest]
has_associated_audits
acts_as_tagger
acts_as_taggable_on :roles
# associations, methods, etc...
end