Actions
Defect #27165
closedDelete_all_members
Status:
Closed
Priority:
Normal
Assignee:
-
Category:
Projects
Target version:
-
Start date:
Due date:
% Done:
0%
Estimated time:
Resolution:
Invalid
Affected version:
Description
The method delete_all_members in the model Project is the next:
def delete_all_members
me, mr = Member.table_name, MemberRole.table_name
self.class.connection.delete("DELETE FROM #{mr} WHERE #{mr}.member_id IN (SELECT #{me}.id FROM #{me} WHERE #{me}.project_id = #{id})")
Member.delete_all(['project_id = ?', id])
end
I was doing some test capturing the destroy event on a member patch and I realized that the event on this patch was only ran in some members.
The question is, why we have to do a class.connection to delete the member_roles and then run a member.delete_all if we have connected the models correctly.
I proved with this:
def delete_all_members
me, mr = Member.table_name, MemberRole.table_name
Member.destroy_all(['project_id = ?', id])
end
and the results were ok. Is there something that I don't know of it's a defect?
Thanks!
Actions