Actions
Defect #18654
closedCustom field is rendered, even if its value is empty (for multiple)
Start date:
Due date:
% Done:
0%
Estimated time:
Resolution:
Fixed
Affected version:
Description
Redmine checks, if the value is available for the custom field, as follows:
if custom_value.value.present?
But for multiple custom fields (e.g., lists, that allow selecting multiple values), the original nil value is replaced with [nil] (not sure where exactly). So, [nil].empty? returns false and the custom field gets rendered.
This issue affects 3.0.x and 1.4.x versions of Redmine.
P.S. Can be solved by montkey-patching `CustomFieldValue` as follows:
alias_method_chain :value, :extended
...
def value_with_extended
    value = value_without_extended
    if custom_field.multiple? && value.present? && value.size == 1 && value.first.nil?
        nil
    else
        value
    end
end
Related issues
       Updated by Jean-Philippe Lang almost 11 years ago
      Updated by Jean-Philippe Lang almost 11 years ago
      
    
    - Assignee set to Jean-Philippe Lang
- Target version set to 3.0.0
       Updated by Jean-Philippe Lang almost 11 years ago
      Updated by Jean-Philippe Lang almost 11 years ago
      
    
    - Status changed from New to Closed
- Resolution set to Fixed
Fixed in r13864, thanks for pointing this out.
       Updated by Toshi MARUYAMA over 10 years ago
      Updated by Toshi MARUYAMA over 10 years ago
      
    
    - Related to Defect #19482: Custom field (long text format) displayed even if empty added
Actions