プロジェクト

全般

プロフィール

Vote #75199

完了

Member#destroy triggers after_destroy callbacks twice

Admin Redmine さんが約4年前に追加. 約4年前に更新.

ステータス:
Closed
優先度:
通常
担当者:
-
カテゴリ:
Code cleanup/refactoring_30
対象バージョン:
開始日:
2022/05/09
期日:
進捗率:

0%

予定工数:
category_id:
30
version_id:
84
issue_org_id:
16795
author_id:
100963
assigned_to_id:
1
comments:
3
status_id:
5
tracker_id:
1
plus1:
0
affected_version:
closed_on:
affected_version_id:
ステータス-->[Closed]

説明

The callback 'after_destroy' for Member is called twice when deleting a member due to the following lines
https://github.com/redmine/redmine/blob/master/app/controllers/members_controller.rb:99
and
https://github.com/redmine/redmine/blob/master/app/models/member_role.rb:42


journals

https://github.com/redmine/redmine/blob/master/app/controllers/members_controller.rb
<pre>
def destroy
if request.delete? && @member.deletable?
@member.destroy
end
respond_to do |format|
format.html { redirect_to_settings_in_projects }
format.js
format.api {
if @member.destroyed?
render_api_ok
else
head :unprocessable_entity
end
}
end
end
</pre>

https://github.com/redmine/redmine/blob/master/app/models/member_role.rb
<pre>
def remove_member_if_empty
if member.roles.empty?
member.destroy
end
end
</pre>
--------------------------------------------------------------------------------
Fixed in r13140, thanks for pointing this out.
--------------------------------------------------------------------------------
Merged.
--------------------------------------------------------------------------------

Admin Redmine さんが約4年前に更新

  • カテゴリCode cleanup/refactoring_30 にセット
  • 対象バージョン2.5.2_84 にセット

他の形式にエクスポート: Atom PDF

いいね!0
いいね!0