Actions
Defect #13518
openTo copy project doesn't copy the issues' custom fields in version 2.2.3
Status:
Needs feedback
Priority:
Normal
Assignee:
-
Category:
Custom fields
Target version:
-
Start date:
Due date:
% Done:
0%
Estimated time:
Resolution:
Affected version:
Description
In Redmine version 2.2.3, when you copy a project that the issues have custom fields, this fields aren't copied.
In a previous release of Redmine (2.1.2) this problem is resolved.
The solution could be the same that is explained in the #11315:
This solution consist in:
- Modify the file app/models/issue.rb to add a call to a function to recalculate the custom fields
- In tracker_id function:
def tracker_id=(tid) self.tracker = nil result = write_attribute(:tracker_id, tid) - @custom_field_values = nil + recalculate_custom_field_values! result end
- In project function
def project=(project, keep_tracker=false) project_was = self.project write_attribute(:project_id, project ? project.id : nil) association_instance_set('project', project) if project_was && project && project_was != project (...) - @custom_field_values = nil + recalculate_custom_field_values! end end
- In tracker_id function:
- Finally, add the new method in lib/plugins/acts_as_customizable/lib/acts_as_customizable.rb
# Recalculate custom_field_values based on current available_custom_fields. # We need to make sure no extraneous custom_field_values are saved, # #custom_field_values= will only save values for custom fields available # to this object. def recalculate_custom_field_values! cfv_hash = custom_field_values.inject({}) {|h,cfv| h[cfv.custom_field.id] = cfv.value; h} reset_custom_values! self.custom_field_values = cfv_hash end
==========================
My Environment
Ruby version 1.9.3 (x86_64-linux)
RubyGems version 1.8.25
Rack version 1.4
Rails version 3.2.12
Active Record version 3.2.12
Action Pack version 3.2.12
Active Resource version 3.2.12
Action Mailer version 3.2.12
Active Support version 3.2.12
Environment production
Database adapter mysql2
Related issues
Actions