[#2622] Change displayed_fields to proper JSONB
This commit is contained in:
parent
a3cb2356cf
commit
68608307ad
4 changed files with 12 additions and 11 deletions
|
@ -102,11 +102,9 @@ module NewGestionnaire
|
|||
fields = values.map do |value|
|
||||
table, column = value.split("/")
|
||||
|
||||
c = procedure.fields.find do |field|
|
||||
procedure.fields.find do |field|
|
||||
field['table'] == table && field['column'] == column
|
||||
end
|
||||
|
||||
c.to_json
|
||||
end
|
||||
|
||||
procedure_presentation.update(displayed_fields: fields)
|
||||
|
|
|
@ -1,12 +1,6 @@
|
|||
class ProcedurePresentation < ApplicationRecord
|
||||
belongs_to :assign_to
|
||||
|
||||
def displayed_fields
|
||||
read_attribute(:displayed_fields).map do |field|
|
||||
field = JSON.parse(field)
|
||||
end
|
||||
end
|
||||
|
||||
def sort
|
||||
JSON.parse(read_attribute(:sort))
|
||||
end
|
||||
|
|
9
lib/tasks/2018_09_20_procedure_presentation_jsonb.rake
Normal file
9
lib/tasks/2018_09_20_procedure_presentation_jsonb.rake
Normal file
|
@ -0,0 +1,9 @@
|
|||
namespace :'2018_09_20_procedure_presentation_jsonb' do
|
||||
task run: :environment do
|
||||
ProcedurePresentation.update_all(
|
||||
<<~SQL
|
||||
displayed_fields = ('[' || ARRAY_TO_STRING(old_displayed_fields, ',') || ']')::JSONB
|
||||
SQL
|
||||
)
|
||||
end
|
||||
end
|
|
@ -4,8 +4,8 @@ describe ProcedurePresentation do
|
|||
let (:procedure_presentation_id) {
|
||||
ProcedurePresentation.create(
|
||||
displayed_fields: [
|
||||
{ "label" => "test1", "table" => "user" }.to_json,
|
||||
{ "label" => "test2", "table" => "champs" }.to_json
|
||||
{ "label" => "test1", "table" => "user" },
|
||||
{ "label" => "test2", "table" => "champs" }
|
||||
],
|
||||
sort: { "table" => "user","column" => "email","order" => "asc" }.to_json,
|
||||
filters: { "a-suivre" => [], "suivis" => [{ "label" => "label1", "table" => "table1", "column" => "column1" }] }.to_json
|
||||
|
|
Loading…
Add table
Reference in a new issue