fix always new lft and rgt are lft = 1, rgt = 2 (#6579)
git-svn-id: http://svn.redmine.org/redmine/trunk@13009 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
e4cf210fa2
commit
3c83d1c646
|
@ -1287,9 +1287,7 @@ class Issue < ActiveRecord::Base
|
||||||
if root_id.nil?
|
if root_id.nil?
|
||||||
# issue was just created
|
# issue was just created
|
||||||
self.root_id = (@parent_issue.nil? ? id : @parent_issue.root_id)
|
self.root_id = (@parent_issue.nil? ? id : @parent_issue.root_id)
|
||||||
set_default_left_and_right
|
Issue.where(["id = ?", id]).update_all(["root_id = ?", root_id])
|
||||||
Issue.where(["id = ?", id]).
|
|
||||||
update_all(["root_id = ?, lft = ?, rgt = ?", root_id, lft, rgt])
|
|
||||||
if @parent_issue
|
if @parent_issue
|
||||||
move_to_child_of(@parent_issue)
|
move_to_child_of(@parent_issue)
|
||||||
end
|
end
|
||||||
|
|
|
@ -540,7 +540,9 @@ module CollectiveIdea #:nodoc:
|
||||||
|
|
||||||
# on creation, set automatically lft and rgt to the end of the tree
|
# on creation, set automatically lft and rgt to the end of the tree
|
||||||
def set_default_left_and_right
|
def set_default_left_and_right
|
||||||
highest_right_row = nested_set_scope(:order => "#{quoted_right_column_full_name} desc").limit(1).lock(true).first
|
highest_right_row =
|
||||||
|
self.class.base_class.unscoped.
|
||||||
|
order("#{quoted_right_column_full_name} desc").limit(1).lock(true).first
|
||||||
maxright = highest_right_row ? (highest_right_row[right_column_name] || 0) : 0
|
maxright = highest_right_row ? (highest_right_row[right_column_name] || 0) : 0
|
||||||
# adds the new node to the right of all existing nodes
|
# adds the new node to the right of all existing nodes
|
||||||
self[left_column_name] = maxright + 1
|
self[left_column_name] = maxright + 1
|
||||||
|
|
|
@ -221,7 +221,8 @@ class ActiveSupport::TestCase
|
||||||
# It seems correct behavior because of this line comment.
|
# It seems correct behavior because of this line comment.
|
||||||
# https://github.com/collectiveidea/awesome_nested_set/blame/199fca9bb9/lib/awesome_nested_set/model.rb#L278
|
# https://github.com/collectiveidea/awesome_nested_set/blame/199fca9bb9/lib/awesome_nested_set/model.rb#L278
|
||||||
def new_issue_lft
|
def new_issue_lft
|
||||||
::AwesomeNestedSet::VERSION > "2.1.6" ? Issue.maximum(:rgt) + 1 : 1
|
# ::AwesomeNestedSet::VERSION > "2.1.6" ? Issue.maximum(:rgt) + 1 : 1
|
||||||
|
Issue.maximum(:rgt) + 1
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue