diff --git a/plugins/custom_forms/db/migrate/20130823151900_associate_fields_to_alternatives.rb b/plugins/custom_forms/db/migrate/20130823151900_associate_fields_to_alternatives.rb index 5ecf512..0cf7d67 100644 --- a/plugins/custom_forms/db/migrate/20130823151900_associate_fields_to_alternatives.rb +++ b/plugins/custom_forms/db/migrate/20130823151900_associate_fields_to_alternatives.rb @@ -14,6 +14,18 @@ class AssociateFieldsToAlternatives < ActiveRecord::Migration end end + CustomFormsPlugin::Answer.find_each do |answer| + labels = [] + answer.value.split(',').each do |value| + labels << answer.field.choices.invert[value] + end + labels.compact! + if labels.present? + answer.value = answer.field.alternatives.where('label IN (?)', labels).map(&:id).join(',') + answer.save! + end + end + change_table :custom_forms_plugin_fields do |t| t.remove :choices end -- libgit2 0.21.2