Vote #81906
未完了Chained custom field filter doesn't work for User fields
0%
説明
A chained custom field filter doesn't work for fields with format User.
Steps to reproduce:
Create a user custom field A (the format doesn't matter) and check Used as a filter¶
Create an issue custom field B with format User and check Used as a filter¶
On the My account page set the custom value A for your own account to an arbitrary value¶
Create an issue and select <> for the custom field B¶
Filter the issue list by the filter B's A and use the value you set on the My account page¶
Expected result:
- The issue is found
Actual result:
- The issue is not found
The reason is that the SQL that filters the issues contains a @WHERE customized_type='User'@. However, the correct clause would be @WHERE customized_type='Principal'@.
Here is a patch to fix the issue:
--- a/app/models/query.rb
+++ b/app/models/query.rb
@@ -1166,7 +1166,7 @@ class Query < ActiveRecord::Base
end
filter = available_filters[field]
- target_class = filter[:through].format.target_class
+ target_class = filter[:through].format.target_class.base_class
"#{queried_table_name}.id #{not_in} IN (" +
"SELECT customized_id FROM #{CustomValue.table_name}" +
Best regards,
Thomas
journals
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------