Come configurare oggetti di tipo array nei plugin. Ho provato a utilizzare json_schema, ma le configurazioni delle proprietà degli oggetti non supportano selettori come category; è possibile inserire solo testo. Inoltre, type: objects non funziona affatto nelle configurazioni dei plugin.
Configurazione di json_schema
quectel_online_customer_category_customers:
default: "[]"
client: true
json_schema: QuectelOnlineCustomer::SiteSettings::CategoryCustomersJsonSchema
plugins/quectel-online-customer/lib/quectel_online_customer/site_settings/category_customers_json_schema.rb
# frozen_string_literal: true
module QuectelOnlineCustomer
module SiteSettings
class CategoryCustomersJsonSchema
def self.schema
@schema ||= begin
{
type: "array",
uniqueItems: true,
default: [],
items: {
type: "object",
title: "Configurazione servizio clienti per categoria",
additionalProperties: false, # Vieta l'invio di campi non definiti
required: %w[category customers], # Entrambi i campi sono obbligatori
properties: {
category: {
type: "category",
description: "Categoria del forum associata",
label: "Categoria"
},
customers: {
type: "usernames", # Selezione multipla di utenti, alternativa al singolo username
description: "Account del servizio clienti assegnati a questa categoria, supporta selezione multipla",
label: "Utenti del servizio clienti",
}
}
}
}
end
end
end
end
end