From 79f80705bde485cdee56f91433ee567113011e41 Mon Sep 17 00:00:00 2001 From: Tracey Eubanks Date: Wed, 20 Jul 2011 17:32:33 -0600 Subject: [PATCH] fixed a mongoid bug created by crack --- app/views/errs/fogbugz_body.txt.erb | 3 +-- app/views/errs/show.html.haml | 2 +- config/initializers/overrides.rb | 1 + lib/overrides/mongoid/relations/builder.rb | 11 +++++++++++ 4 files changed, 14 insertions(+), 3 deletions(-) create mode 100644 config/initializers/overrides.rb create mode 100644 lib/overrides/mongoid/relations/builder.rb diff --git a/app/views/errs/fogbugz_body.txt.erb b/app/views/errs/fogbugz_body.txt.erb index f0a356f..38f0546 100644 --- a/app/views/errs/fogbugz_body.txt.erb +++ b/app/views/errs/fogbugz_body.txt.erb @@ -1,5 +1,4 @@ -<% # some sort of stupid mongoid bugg that doesn't allow us to use err.app. have to explicitly search for it %> -"See this exception on Errbit": <%= app_err_url(App.where(_id: err.app_id).first, err) %> +"See this exception on Errbit": <%= app_err_url(err.app, err) %> <% if notice = err.notices.first %> <%= notice.message %> diff --git a/app/views/errs/show.html.haml b/app/views/errs/show.html.haml index 8d75d62..32cdb27 100644 --- a/app/views/errs/show.html.haml +++ b/app/views/errs/show.html.haml @@ -11,7 +11,7 @@ = last_notice_at(@err).to_s(:micro) - content_for :action_bar do / some sort of mongoid association bug or something. have to actually search for the stupid app instead of using @err.app - - if App.where(_id: @err.app_id).first.issue_tracker + - if @err.app.issue_tracker - if @err.issue_link.blank? %span= link_to 'create issue', create_issue_app_err_path(@app, @err), :method => :post, :class => "#{@app.issue_tracker.issue_tracker_type}_create create-issue" - else diff --git a/config/initializers/overrides.rb b/config/initializers/overrides.rb new file mode 100644 index 0000000..7172f92 --- /dev/null +++ b/config/initializers/overrides.rb @@ -0,0 +1 @@ +require Rails.root.join('lib/overrides/mongoid/relations/builder.rb') diff --git a/lib/overrides/mongoid/relations/builder.rb b/lib/overrides/mongoid/relations/builder.rb new file mode 100644 index 0000000..ad3ba93 --- /dev/null +++ b/lib/overrides/mongoid/relations/builder.rb @@ -0,0 +1,11 @@ +module Mongoid + module Relations + class Builder + def query? + return true unless object.respond_to?(:to_a) + obj = object.to_a.first + !obj.is_a?(Mongoid::Document) && !obj.nil? + end + end + end +end -- libgit2 0.21.2