OSDN Git Service

Always create merge_request_diff if MR created
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Wed, 22 Jan 2014 18:22:20 +0000 (20:22 +0200)
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Wed, 22 Jan 2014 18:22:20 +0000 (20:22 +0200)
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
app/controllers/projects/merge_requests_controller.rb
app/models/merge_request.rb
app/observers/merge_request_observer.rb
lib/api/merge_requests.rb

index 0c7a442..baaa3c7 100644 (file)
@@ -76,7 +76,6 @@ class Projects::MergeRequestsController < Projects::ApplicationController
     @merge_request.author = current_user
     @target_branches ||= []
     if @merge_request.save
-      @merge_request.reload_code
       redirect_to [@merge_request.target_project, @merge_request], notice: 'Merge request was successfully created.'
     else
       @source_project = @merge_request.source_project
index 076463f..c53b24b 100644 (file)
@@ -30,7 +30,9 @@ class MergeRequest < ActiveRecord::Base
 
   belongs_to :target_project, foreign_key: :target_project_id, class_name: "Project"
   belongs_to :source_project, foreign_key: :source_project_id, class_name: "Project"
+
   has_one :merge_request_diff, dependent: :destroy
+  after_create :create_merge_request_diff
 
   delegate :commits, :diffs, :last_commit, :last_commit_short_sha, to: :merge_request_diff, prefix: nil
 
index 9a3e90d..0ac555f 100644 (file)
@@ -6,7 +6,6 @@ class MergeRequestObserver < ActivityObserver
       create_event(merge_request, Event.determine_action(merge_request))
     end
 
-    merge_request.create_merge_request_diff
     notification.new_merge_request(merge_request, current_user)
     merge_request.create_cross_references!(merge_request.project, current_user)
     execute_hooks(merge_request)
index 3f4bec8..4bd57f5 100644 (file)
@@ -88,7 +88,6 @@ module API
           end
 
           if merge_request.save
-            merge_request.reload_code
             present merge_request, with: Entities::MergeRequest
           else
             handle_merge_request_errors! merge_request.errors