You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 23 Next »

Per poter effettuare una migrazione di dati organizzati come in questo esempio che si tratti di un CT Bandi dal d7 di uniss al nuovo d9 di uniss, abbiamo bisogno di trovare un modo sia su come esporre questi dati lato d7 (anche come strutturarli etc) sia come riceverli lato d9.

Esposizione dei dati lato d7

Abbiamo deciso di esporre un service REST utilizzando views dal sito di uniss per migrare i bandi al nuovo sito unissd9

Per lo scopo bisogna abilitare i moduli :

Attivazione moduli
drush en services
drush en rest_server
drush en services_views
drush en views_datasource
drush en services_basic_auth

Abbiamo creato due viste che espongono dei services,

bandi_rest_api:

  • lista dei bandi
  • totale dei bandi (da il numero totale dei bandi)
  • lista dei File nei paragrafi nei bandi
  • totale dei File nei paragrafi nei bandi

bandi_rest_terms:

  • lista dei termini di tassonomia usati nei bandi
  • totale dei termini di tassonomia usati nei bandi

Questi services generano un Rest che verrà consumato dalla migrare in unissd9. Tutti i services se interrogati mostrano soltanto 5 risultati, al netto di quelle con i totali e i risultati sono filtrati su data di scadenza maggiore di 5 anni fa.

Di seguito la configurazione di services, views, e la lista degli url generati

Services configuration
$endpoint = new stdClass();
$endpoint->disabled = FALSE; /* Edit this to true to make a default endpoint disabled initially */
$endpoint->api_version = 3;
$endpoint->name = 'bandoapi';
$endpoint->server = 'rest_server';
$endpoint->path = 'api/v1';
$endpoint->authentication = array();
$endpoint->server_settings = array(
  'formatters' => array(
    'json' => TRUE,
    'bencode' => FALSE,
    'jsonp' => FALSE,
    'php' => FALSE,
    'xml' => FALSE,
  ),
  'parsers' => array(
    'application/json' => TRUE,
    'application/vnd.php.serialized' => FALSE,
    'application/x-www-form-urlencoded' => FALSE,
    'application/xml' => FALSE,
    'multipart/form-data' => FALSE,
    'text/xml' => FALSE,
  ),
);
$endpoint->resources = array(
  'bandi-file-bando-counter' => array(
    'operations' => array(
      'index' => array(
        'enabled' => '1',
      ),
    ),
  ),
  'bandi-file-bando-list' => array(
    'operations' => array(
      'index' => array(
        'enabled' => '1',
      ),
    ),
  ),
  'bandi-list' => array(
    'operations' => array(
      'index' => array(
        'enabled' => '1',
      ),
    ),
  ),
  'bandi-paragraph-files-counter' => array(
    'operations' => array(
      'index' => array(
        'enabled' => '1',
      ),
    ),
  ),
  'bandi-paragraph-files-list' => array(
    'operations' => array(
      'index' => array(
        'enabled' => '1',
      ),
    ),
  ),
  'count-bandi' => array(
    'operations' => array(
      'index' => array(
        'enabled' => '1',
      ),
    ),
  ),
  'file' => array(
    'operations' => array(
      'retrieve' => array(
        'enabled' => '1',
      ),
      'index' => array(
        'enabled' => '1',
      ),
    ),
  ),
  'node' => array(
    'operations' => array(
      'index' => array(
        'enabled' => '1',
      ),
    ),
  ),
  'system' => array(
    'actions' => array(
      'connect' => array(
        'enabled' => '1',
      ),
    ),
  ),
  'tax-terms' => array(
    'operations' => array(
      'index' => array(
        'enabled' => '1',
      ),
    ),
  ),
  'tax-terms-counter' => array(
    'operations' => array(
      'index' => array(
        'enabled' => '1',
      ),
    ),
  ),
  'taxonomy_term' => array(
    'operations' => array(
      'index' => array(
        'enabled' => '1',
      ),
    ),
  ),
  'taxonomy_vocabulary' => array(
    'operations' => array(
      'retrieve' => array(
        'enabled' => '1',
      ),
      'index' => array(
        'enabled' => '1',
      ),
    ),
  ),
  'user' => array(
    'operations' => array(
      'retrieve' => array(
        'enabled' => '1',
      ),
      'index' => array(
        'enabled' => '1',
      ),
    ),
  ),
  'views' => array(
    'operations' => array(
      'retrieve' => array(
        'enabled' => '1',
      ),
    ),
  ),
);
$endpoint->debug = 0;
     
views configuration
$view = new view();
$view->name = 'bandi_rest_api';
$view->description = 'Esposizione dei bandi degli ultimi 5 anni in rest per migrazione in Drupal 9';
$view->tag = 'default';
$view->base_table = 'node';
$view->human_name = 'Bandi rest api';
$view->core = 7;
$view->api_version = '3.0';
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */

/* Display: Master */
$handler = $view->new_display('default', 'Master', 'default');
$handler->display->display_options['title'] = 'Bandi rest api';
$handler->display->display_options['use_ajax'] = TRUE;
$handler->display->display_options['use_more_always'] = FALSE;
$handler->display->display_options['access']['type'] = 'none';
$handler->display->display_options['cache']['type'] = 'none';
$handler->display->display_options['query']['type'] = 'views_query';
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['exposed_form']['options']['reset_button_label'] = 'Ripristina';
$handler->display->display_options['exposed_form']['options']['autosubmit'] = TRUE;
$handler->display->display_options['pager']['type'] = 'some';
$handler->display->display_options['pager']['options']['items_per_page'] = '5';
$handler->display->display_options['pager']['options']['offset'] = '0';
$handler->display->display_options['style_plugin'] = 'default';
$handler->display->display_options['row_plugin'] = 'fields';
$handler->display->display_options['row_options']['inline'] = array(
  'title' => 'title',
  'field_data_pubblicazione' => 'field_data_pubblicazione',
);
$handler->display->display_options['row_options']['default_field_elements'] = FALSE;
/* Relationship: Contenuto: File del bando (field_file_del_bando:fid) */
$handler->display->display_options['relationships']['field_file_del_bando_fid']['id'] = 'field_file_del_bando_fid';
$handler->display->display_options['relationships']['field_file_del_bando_fid']['table'] = 'field_data_field_file_del_bando';
$handler->display->display_options['relationships']['field_file_del_bando_fid']['field'] = 'field_file_del_bando_fid';
/* Campo: Contenuto: Data pubblicazione */
$handler->display->display_options['fields']['field_data_pubblicazione']['id'] = 'field_data_pubblicazione';
$handler->display->display_options['fields']['field_data_pubblicazione']['table'] = 'field_data_field_data_pubblicazione';
$handler->display->display_options['fields']['field_data_pubblicazione']['field'] = 'field_data_pubblicazione';
$handler->display->display_options['fields']['field_data_pubblicazione']['label'] = 'pubblication_date';
$handler->display->display_options['fields']['field_data_pubblicazione']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['field_data_pubblicazione']['element_default_classes'] = FALSE;
$handler->display->display_options['fields']['field_data_pubblicazione']['hide_alter_empty'] = FALSE;
$handler->display->display_options['fields']['field_data_pubblicazione']['type'] = 'date_plain';
$handler->display->display_options['fields']['field_data_pubblicazione']['settings'] = array(
  'format_type' => 'long',
  'fromto' => '',
  'multiple_number' => '',
  'multiple_from' => '',
  'multiple_to' => '',
);
/* Campo: Contenuto: Titolo */
$handler->display->display_options['fields']['title']['id'] = 'title';
$handler->display->display_options['fields']['title']['table'] = 'node';
$handler->display->display_options['fields']['title']['field'] = 'title';
$handler->display->display_options['fields']['title']['label'] = 'titolo';
$handler->display->display_options['fields']['title']['alter']['word_boundary'] = FALSE;
$handler->display->display_options['fields']['title']['alter']['ellipsis'] = FALSE;
$handler->display->display_options['fields']['title']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['title']['element_default_classes'] = FALSE;
$handler->display->display_options['fields']['title']['hide_alter_empty'] = FALSE;
$handler->display->display_options['fields']['title']['link_to_node'] = FALSE;
/* Campo: Contenuto: Data scadenza */
$handler->display->display_options['fields']['field_data_scadenza']['id'] = 'field_data_scadenza';
$handler->display->display_options['fields']['field_data_scadenza']['table'] = 'field_data_field_data_scadenza';
$handler->display->display_options['fields']['field_data_scadenza']['field'] = 'field_data_scadenza';
$handler->display->display_options['fields']['field_data_scadenza']['label'] = 'end_publication_date';
$handler->display->display_options['fields']['field_data_scadenza']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['field_data_scadenza']['settings'] = array(
  'format_type' => 'long',
  'fromto' => 'both',
  'multiple_number' => '',
  'multiple_from' => '',
  'multiple_to' => '',
  'show_repeat_rule' => 'show',
);
/* Campo: Contenuto: Orario */
$handler->display->display_options['fields']['field_orario']['id'] = 'field_orario';
$handler->display->display_options['fields']['field_orario']['table'] = 'field_data_field_orario';
$handler->display->display_options['fields']['field_orario']['field'] = 'field_orario';
$handler->display->display_options['fields']['field_orario']['element_label_colon'] = FALSE;
/* Campo: Contenuto: Bando espletato? */
$handler->display->display_options['fields']['field_bando_archiviato']['id'] = 'field_bando_archiviato';
$handler->display->display_options['fields']['field_bando_archiviato']['table'] = 'field_data_field_bando_archiviato';
$handler->display->display_options['fields']['field_bando_archiviato']['field'] = 'field_bando_archiviato';
$handler->display->display_options['fields']['field_bando_archiviato']['label'] = 'Bando_espletato';
$handler->display->display_options['fields']['field_bando_archiviato']['alter']['text'] = 'if ([field_bando_archiviato-value]  == 1) \'\'';
$handler->display->display_options['fields']['field_bando_archiviato']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['field_bando_archiviato']['type'] = 'list_key';
/* Campo: Contenuto: Body */
$handler->display->display_options['fields']['body']['id'] = 'body';
$handler->display->display_options['fields']['body']['table'] = 'field_data_body';
$handler->display->display_options['fields']['body']['field'] = 'body';
$handler->display->display_options['fields']['body']['label'] = 'descrizione';
$handler->display->display_options['fields']['body']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['body']['element_default_classes'] = FALSE;
/* Campo: Contenuto: Pubblicato */
$handler->display->display_options['fields']['status']['id'] = 'status';
$handler->display->display_options['fields']['status']['table'] = 'node';
$handler->display->display_options['fields']['status']['field'] = 'status';
$handler->display->display_options['fields']['status']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['status']['not'] = 0;
/* Campo: Contenuto: Percorso */
$handler->display->display_options['fields']['path_1']['id'] = 'path_1';
$handler->display->display_options['fields']['path_1']['table'] = 'node';
$handler->display->display_options['fields']['path_1']['field'] = 'path';
$handler->display->display_options['fields']['path_1']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['path_1']['element_default_classes'] = FALSE;
/* Campo: File: ID file */
$handler->display->display_options['fields']['fid']['id'] = 'fid';
$handler->display->display_options['fields']['fid']['table'] = 'file_managed';
$handler->display->display_options['fields']['fid']['field'] = 'fid';
/* Campo: File: Nome */
$handler->display->display_options['fields']['filename']['id'] = 'filename';
$handler->display->display_options['fields']['filename']['table'] = 'file_managed';
$handler->display->display_options['fields']['filename']['field'] = 'filename';
/* Campo: File: Percorso */
$handler->display->display_options['fields']['uri']['id'] = 'uri';
$handler->display->display_options['fields']['uri']['table'] = 'file_managed';
$handler->display->display_options['fields']['uri']['field'] = 'uri';
/* Campo: File: Etichetta file */
$handler->display->display_options['fields']['field_etichetta_file']['id'] = 'field_etichetta_file';
$handler->display->display_options['fields']['field_etichetta_file']['table'] = 'field_data_field_etichetta_file';
$handler->display->display_options['fields']['field_etichetta_file']['field'] = 'field_etichetta_file';
$handler->display->display_options['fields']['field_etichetta_file']['relationship'] = 'field_file_del_bando_fid';
$handler->display->display_options['fields']['field_etichetta_file']['element_label_colon'] = FALSE;
/* Campo: Global: Visualizza */
$handler->display->display_options['fields']['view']['id'] = 'view';
$handler->display->display_options['fields']['view']['table'] = 'views';
$handler->display->display_options['fields']['view']['field'] = 'view';
/* Filter criterion: Contenuto: Tipo */
$handler->display->display_options['filters']['type']['id'] = 'type';
$handler->display->display_options['filters']['type']['table'] = 'node';
$handler->display->display_options['filters']['type']['field'] = 'type';
$handler->display->display_options['filters']['type']['value'] = array(
  'bando' => 'bando',
);
/* Filter criterion: Contenuto: Data scadenza (field_data_scadenza) */
$handler->display->display_options['filters']['field_data_scadenza_value']['id'] = 'field_data_scadenza_value';
$handler->display->display_options['filters']['field_data_scadenza_value']['table'] = 'field_data_field_data_scadenza';
$handler->display->display_options['filters']['field_data_scadenza_value']['field'] = 'field_data_scadenza_value';
$handler->display->display_options['filters']['field_data_scadenza_value']['operator'] = '>';
$handler->display->display_options['filters']['field_data_scadenza_value']['default_date'] = 'now -5 year';

/* Display: Bandi */
$handler = $view->new_display('services', 'Bandi', 'bandi');
$handler->display->display_options['defaults']['style_plugin'] = FALSE;
$handler->display->display_options['style_plugin'] = 'views_json';
$handler->display->display_options['style_options']['root_object'] = 'Bandi';
$handler->display->display_options['style_options']['top_child_object'] = 'Bando';
$handler->display->display_options['style_options']['plaintext_output'] = 1;
$handler->display->display_options['style_options']['remove_newlines'] = 0;
$handler->display->display_options['style_options']['jsonp_prefix'] = '';
$handler->display->display_options['style_options']['using_views_api_mode'] = 1;
$handler->display->display_options['style_options']['translate_labels'] = 0;
$handler->display->display_options['style_options']['object_arrays'] = 0;
$handler->display->display_options['style_options']['numeric_strings'] = 0;
$handler->display->display_options['style_options']['bigint_string'] = 0;
$handler->display->display_options['style_options']['pretty_print'] = 0;
$handler->display->display_options['style_options']['unescaped_slashes'] = 1;
$handler->display->display_options['style_options']['unescaped_unicode'] = 1;
$handler->display->display_options['style_options']['char_encoding'] = array();
$handler->display->display_options['defaults']['style_options'] = FALSE;
$handler->display->display_options['defaults']['row_plugin'] = FALSE;
$handler->display->display_options['defaults']['row_options'] = FALSE;
$handler->display->display_options['defaults']['relationships'] = FALSE;
/* Relationship: Contenuto: File del bando (field_file_del_bando:fid) */
$handler->display->display_options['relationships']['field_file_del_bando_fid']['id'] = 'field_file_del_bando_fid';
$handler->display->display_options['relationships']['field_file_del_bando_fid']['table'] = 'field_data_field_file_del_bando';
$handler->display->display_options['relationships']['field_file_del_bando_fid']['field'] = 'field_file_del_bando_fid';
/* Relationship: Contenuto: Taxonomy terms on node */
$handler->display->display_options['relationships']['term_node_tid']['id'] = 'term_node_tid';
$handler->display->display_options['relationships']['term_node_tid']['table'] = 'node';
$handler->display->display_options['relationships']['term_node_tid']['field'] = 'term_node_tid';
$handler->display->display_options['relationships']['term_node_tid']['vocabularies'] = array(
  'categoria_bando' => 'categoria_bando',
  'bandi_per_docenti_e_ricercatori' => 'bandi_per_docenti_e_ricercatori',
  'bandi_per_personale_tecnico_amministrativo' => 'bandi_per_personale_tecnico_amministrativo',
  'bandi_per_studenti' => 'bandi_per_studenti',
  'bandi_di_gara' => 'bandi_di_gara',
  'altri_bandi' => 'altri_bandi',
  'base_area' => 0,
  'area_corsi' => 0,
  'pagina_di_target' => 0,
  'categoria_documentazione' => 0,
  'campus_sardegna' => 0,
  'categoria_evento' => 0,
  'docenti' => 0,
  'personale' => 0,
  'sba_biblioteche' => 0,
  'studenti' => 0,
  'media_folders' => 0,
  'offerta_formativa_scuole' => 0,
);
$handler->display->display_options['defaults']['fields'] = FALSE;
/* Campo: Contenuto: Titolo */
$handler->display->display_options['fields']['title']['id'] = 'title';
$handler->display->display_options['fields']['title']['table'] = 'node';
$handler->display->display_options['fields']['title']['field'] = 'title';
$handler->display->display_options['fields']['title']['label'] = 'titolo';
$handler->display->display_options['fields']['title']['alter']['word_boundary'] = FALSE;
$handler->display->display_options['fields']['title']['alter']['ellipsis'] = FALSE;
$handler->display->display_options['fields']['title']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['title']['element_default_classes'] = FALSE;
$handler->display->display_options['fields']['title']['hide_alter_empty'] = FALSE;
$handler->display->display_options['fields']['title']['link_to_node'] = FALSE;
/* Campo: Contenuto: Dipartimento bando */
$handler->display->display_options['fields']['field_dipartimento_bando']['id'] = 'field_dipartimento_bando';
$handler->display->display_options['fields']['field_dipartimento_bando']['table'] = 'field_data_field_dipartimento_bando';
$handler->display->display_options['fields']['field_dipartimento_bando']['field'] = 'field_dipartimento_bando';
$handler->display->display_options['fields']['field_dipartimento_bando']['label'] = 'dipartimento_bando';
$handler->display->display_options['fields']['field_dipartimento_bando']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['field_dipartimento_bando']['element_default_classes'] = FALSE;
$handler->display->display_options['fields']['field_dipartimento_bando']['hide_alter_empty'] = FALSE;
$handler->display->display_options['fields']['field_dipartimento_bando']['type'] = 'list_key';
$handler->display->display_options['fields']['field_dipartimento_bando']['delta_offset'] = '0';
/* Campo: Contenuto: Body */
$handler->display->display_options['fields']['body']['id'] = 'body';
$handler->display->display_options['fields']['body']['table'] = 'field_data_body';
$handler->display->display_options['fields']['body']['field'] = 'body';
$handler->display->display_options['fields']['body']['label'] = 'descrizione';
$handler->display->display_options['fields']['body']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['body']['element_default_classes'] = FALSE;
/* Campo: Contenuto: Data pubblicazione */
$handler->display->display_options['fields']['field_data_pubblicazione']['id'] = 'field_data_pubblicazione';
$handler->display->display_options['fields']['field_data_pubblicazione']['table'] = 'field_data_field_data_pubblicazione';
$handler->display->display_options['fields']['field_data_pubblicazione']['field'] = 'field_data_pubblicazione';
$handler->display->display_options['fields']['field_data_pubblicazione']['label'] = 'pubblication_date';
$handler->display->display_options['fields']['field_data_pubblicazione']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['field_data_pubblicazione']['element_default_classes'] = FALSE;
$handler->display->display_options['fields']['field_data_pubblicazione']['hide_alter_empty'] = FALSE;
$handler->display->display_options['fields']['field_data_pubblicazione']['type'] = 'date_plain';
$handler->display->display_options['fields']['field_data_pubblicazione']['settings'] = array(
  'format_type' => 'services',
  'fromto' => '',
  'multiple_number' => '',
  'multiple_from' => '',
  'multiple_to' => '',
);
/* Campo: Contenuto: Data scadenza */
$handler->display->display_options['fields']['field_data_scadenza']['id'] = 'field_data_scadenza';
$handler->display->display_options['fields']['field_data_scadenza']['table'] = 'field_data_field_data_scadenza';
$handler->display->display_options['fields']['field_data_scadenza']['field'] = 'field_data_scadenza';
$handler->display->display_options['fields']['field_data_scadenza']['label'] = 'end_publication_date';
$handler->display->display_options['fields']['field_data_scadenza']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['field_data_scadenza']['element_default_classes'] = FALSE;
$handler->display->display_options['fields']['field_data_scadenza']['hide_alter_empty'] = FALSE;
$handler->display->display_options['fields']['field_data_scadenza']['type'] = 'date_plain';
$handler->display->display_options['fields']['field_data_scadenza']['settings'] = array(
  'format_type' => 'services',
  'fromto' => 'both',
  'multiple_number' => '',
  'multiple_from' => '',
  'multiple_to' => '',
);
/* Campo: Contenuto: Orario */
$handler->display->display_options['fields']['field_orario']['id'] = 'field_orario';
$handler->display->display_options['fields']['field_orario']['table'] = 'field_data_field_orario';
$handler->display->display_options['fields']['field_orario']['field'] = 'field_orario';
$handler->display->display_options['fields']['field_orario']['element_label_colon'] = FALSE;
/* Campo: Contenuto: Bando espletato? */
$handler->display->display_options['fields']['field_bando_archiviato']['id'] = 'field_bando_archiviato';
$handler->display->display_options['fields']['field_bando_archiviato']['table'] = 'field_data_field_bando_archiviato';
$handler->display->display_options['fields']['field_bando_archiviato']['field'] = 'field_bando_archiviato';
$handler->display->display_options['fields']['field_bando_archiviato']['label'] = 'Bando_espletato';
$handler->display->display_options['fields']['field_bando_archiviato']['alter']['text'] = 'if ([field_bando_archiviato-value]  == 1) \'\'';
$handler->display->display_options['fields']['field_bando_archiviato']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['field_bando_archiviato']['type'] = 'list_key';
/* Campo: Contenuto: Pubblicato */
$handler->display->display_options['fields']['status']['id'] = 'status';
$handler->display->display_options['fields']['status']['table'] = 'node';
$handler->display->display_options['fields']['status']['field'] = 'status';
$handler->display->display_options['fields']['status']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['status']['not'] = 0;
/* Campo: Contenuto: Percorso */
$handler->display->display_options['fields']['path_1']['id'] = 'path_1';
$handler->display->display_options['fields']['path_1']['table'] = 'node';
$handler->display->display_options['fields']['path_1']['field'] = 'path';
$handler->display->display_options['fields']['path_1']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['path_1']['element_default_classes'] = FALSE;
/* Campo: Contenuto: Categoria Bando */
$handler->display->display_options['fields']['field_tr_bando_per_target']['id'] = 'field_tr_bando_per_target';
$handler->display->display_options['fields']['field_tr_bando_per_target']['table'] = 'field_data_field_tr_bando_per_target';
$handler->display->display_options['fields']['field_tr_bando_per_target']['field'] = 'field_tr_bando_per_target';
$handler->display->display_options['fields']['field_tr_bando_per_target']['label'] = 'tax_categoria_bando_term';
$handler->display->display_options['fields']['field_tr_bando_per_target']['alter']['alter_text'] = TRUE;
$handler->display->display_options['fields']['field_tr_bando_per_target']['alter']['text'] = '[field_tr_bando_per_target-tid]';
$handler->display->display_options['fields']['field_tr_bando_per_target']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['field_tr_bando_per_target']['type'] = 'taxonomy_term_reference_plain';
/* Campo: Contenuto: Bandi per docenti e ricercatori */
$handler->display->display_options['fields']['field_tr_bandi_per_docenti']['id'] = 'field_tr_bandi_per_docenti';
$handler->display->display_options['fields']['field_tr_bandi_per_docenti']['table'] = 'field_data_field_tr_bandi_per_docenti';
$handler->display->display_options['fields']['field_tr_bandi_per_docenti']['field'] = 'field_tr_bandi_per_docenti';
$handler->display->display_options['fields']['field_tr_bandi_per_docenti']['label'] = 'tax_doc_e_ricerc_term';
$handler->display->display_options['fields']['field_tr_bandi_per_docenti']['alter']['alter_text'] = TRUE;
$handler->display->display_options['fields']['field_tr_bandi_per_docenti']['alter']['text'] = '[field_tr_bandi_per_docenti-tid]';
$handler->display->display_options['fields']['field_tr_bandi_per_docenti']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['field_tr_bandi_per_docenti']['type'] = 'taxonomy_term_reference_plain';
/* Campo: Contenuto: Bandi per personale tecnico amministrativo */
$handler->display->display_options['fields']['field_tr_bandi_personale']['id'] = 'field_tr_bandi_personale';
$handler->display->display_options['fields']['field_tr_bandi_personale']['table'] = 'field_data_field_tr_bandi_personale';
$handler->display->display_options['fields']['field_tr_bandi_personale']['field'] = 'field_tr_bandi_personale';
$handler->display->display_options['fields']['field_tr_bandi_personale']['label'] = 'tax_bandi_pta_term';
$handler->display->display_options['fields']['field_tr_bandi_personale']['alter']['alter_text'] = TRUE;
$handler->display->display_options['fields']['field_tr_bandi_personale']['alter']['text'] = '[field_tr_bandi_personale-tid]';
$handler->display->display_options['fields']['field_tr_bandi_personale']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['field_tr_bandi_personale']['type'] = 'taxonomy_term_reference_plain';
/* Campo: Contenuto: Bandi di gara */
$handler->display->display_options['fields']['field_tr_bandi_di_gara']['id'] = 'field_tr_bandi_di_gara';
$handler->display->display_options['fields']['field_tr_bandi_di_gara']['table'] = 'field_data_field_tr_bandi_di_gara';
$handler->display->display_options['fields']['field_tr_bandi_di_gara']['field'] = 'field_tr_bandi_di_gara';
$handler->display->display_options['fields']['field_tr_bandi_di_gara']['label'] = 'tax_bandi_di_gara_term';
$handler->display->display_options['fields']['field_tr_bandi_di_gara']['alter']['alter_text'] = TRUE;
$handler->display->display_options['fields']['field_tr_bandi_di_gara']['alter']['text'] = '[field_tr_bandi_di_gara-tid]';
$handler->display->display_options['fields']['field_tr_bandi_di_gara']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['field_tr_bandi_di_gara']['type'] = 'taxonomy_term_reference_plain';
/* Campo: Contenuto: Bandi per studenti */
$handler->display->display_options['fields']['field_tr_bandi_per_studenti']['id'] = 'field_tr_bandi_per_studenti';
$handler->display->display_options['fields']['field_tr_bandi_per_studenti']['table'] = 'field_data_field_tr_bandi_per_studenti';
$handler->display->display_options['fields']['field_tr_bandi_per_studenti']['field'] = 'field_tr_bandi_per_studenti';
$handler->display->display_options['fields']['field_tr_bandi_per_studenti']['label'] = 'tax_bandi_per_studenti_term';
$handler->display->display_options['fields']['field_tr_bandi_per_studenti']['alter']['alter_text'] = TRUE;
$handler->display->display_options['fields']['field_tr_bandi_per_studenti']['alter']['text'] = '[field_tr_bandi_per_studenti-tid]';
$handler->display->display_options['fields']['field_tr_bandi_per_studenti']['type'] = 'taxonomy_term_reference_plain';
/* Campo: Contenuto: Altri bandi */
$handler->display->display_options['fields']['field_tr_altri_bandi']['id'] = 'field_tr_altri_bandi';
$handler->display->display_options['fields']['field_tr_altri_bandi']['table'] = 'field_data_field_tr_altri_bandi';
$handler->display->display_options['fields']['field_tr_altri_bandi']['field'] = 'field_tr_altri_bandi';
$handler->display->display_options['fields']['field_tr_altri_bandi']['label'] = 'tax_altri_bandi_term';
$handler->display->display_options['fields']['field_tr_altri_bandi']['alter']['alter_text'] = TRUE;
$handler->display->display_options['fields']['field_tr_altri_bandi']['alter']['text'] = '[field_tr_altri_bandi-tid]';
$handler->display->display_options['fields']['field_tr_altri_bandi']['element_default_classes'] = FALSE;
$handler->display->display_options['fields']['field_tr_altri_bandi']['type'] = 'taxonomy_term_reference_plain';
/* Campo: File: ID file */
$handler->display->display_options['fields']['fid']['id'] = 'fid';
$handler->display->display_options['fields']['fid']['table'] = 'file_managed';
$handler->display->display_options['fields']['fid']['field'] = 'fid';
$handler->display->display_options['fields']['fid']['relationship'] = 'field_file_del_bando_fid';
$handler->display->display_options['fields']['fid']['label'] = 'file_id';
$handler->display->display_options['fields']['fid']['element_label_colon'] = FALSE;
/* Campo: File: Nome */
$handler->display->display_options['fields']['filename']['id'] = 'filename';
$handler->display->display_options['fields']['filename']['table'] = 'file_managed';
$handler->display->display_options['fields']['filename']['field'] = 'filename';
$handler->display->display_options['fields']['filename']['relationship'] = 'field_file_del_bando_fid';
$handler->display->display_options['fields']['filename']['label'] = 'fileName';
$handler->display->display_options['fields']['filename']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['filename']['link_to_file'] = FALSE;
/* Campo: File: Percorso */
$handler->display->display_options['fields']['uri']['id'] = 'uri';
$handler->display->display_options['fields']['uri']['table'] = 'file_managed';
$handler->display->display_options['fields']['uri']['field'] = 'uri';
$handler->display->display_options['fields']['uri']['relationship'] = 'field_file_del_bando_fid';
$handler->display->display_options['fields']['uri']['label'] = 'filePath';
$handler->display->display_options['fields']['uri']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['uri']['file_download_path'] = TRUE;
/* Campo: File: Etichetta file */
$handler->display->display_options['fields']['field_etichetta_file']['id'] = 'field_etichetta_file';
$handler->display->display_options['fields']['field_etichetta_file']['table'] = 'field_data_field_etichetta_file';
$handler->display->display_options['fields']['field_etichetta_file']['field'] = 'field_etichetta_file';
$handler->display->display_options['fields']['field_etichetta_file']['relationship'] = 'field_file_del_bando_fid';
$handler->display->display_options['fields']['field_etichetta_file']['label'] = 'fileLabel';
$handler->display->display_options['fields']['field_etichetta_file']['element_label_colon'] = FALSE;
/* Campo: Contenuto: Nid */
$handler->display->display_options['fields']['nid']['id'] = 'nid';
$handler->display->display_options['fields']['nid']['table'] = 'node';
$handler->display->display_options['fields']['nid']['field'] = 'nid';
$handler->display->display_options['fields']['nid']['element_label_colon'] = FALSE;
/* Campo: Campo: Elenco dei paragrafi */
$handler->display->display_options['fields']['field_paragrafi']['id'] = 'field_paragrafi';
$handler->display->display_options['fields']['field_paragrafi']['table'] = 'field_data_field_paragrafi';
$handler->display->display_options['fields']['field_paragrafi']['field'] = 'field_paragrafi';
$handler->display->display_options['fields']['field_paragrafi']['label'] = 'paragrph';
$handler->display->display_options['fields']['field_paragrafi']['alter']['trim_whitespace'] = TRUE;
$handler->display->display_options['fields']['field_paragrafi']['alter']['nl2br'] = TRUE;
$handler->display->display_options['fields']['field_paragrafi']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['field_paragrafi']['element_default_classes'] = FALSE;
$handler->display->display_options['fields']['field_paragrafi']['hide_alter_empty'] = FALSE;
$handler->display->display_options['fields']['field_paragrafi']['settings'] = array(
  'view_mode' => 'full',
);
$handler->display->display_options['fields']['field_paragrafi']['delta_offset'] = '0';
$handler->display->display_options['fields']['field_paragrafi']['multi_type'] = 'ul';
$handler->display->display_options['path'] = 'bandi-list';

/* Display: BandiCounter */
$handler = $view->new_display('services', 'BandiCounter', 'count_bandi');
$handler->display->display_options['defaults']['group_by'] = FALSE;
$handler->display->display_options['group_by'] = TRUE;
$handler->display->display_options['defaults']['pager'] = FALSE;
$handler->display->display_options['pager']['type'] = 'none';
$handler->display->display_options['pager']['options']['offset'] = '0';
$handler->display->display_options['defaults']['relationships'] = FALSE;
$handler->display->display_options['defaults']['fields'] = FALSE;
/* Campo: Contenuto: Nid */
$handler->display->display_options['fields']['nid']['id'] = 'nid';
$handler->display->display_options['fields']['nid']['table'] = 'node';
$handler->display->display_options['fields']['nid']['field'] = 'nid';
$handler->display->display_options['fields']['nid']['group_type'] = 'count_distinct';
$handler->display->display_options['fields']['nid']['label'] = 'total';
$handler->display->display_options['fields']['nid']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['nid']['element_default_classes'] = FALSE;
$handler->display->display_options['fields']['nid']['hide_alter_empty'] = FALSE;
$handler->display->display_options['fields']['nid']['separator'] = '';
$handler->display->display_options['path'] = 'count-bandi';

/* Display: BandiParagraphFiles */
$handler = $view->new_display('services', 'BandiParagraphFiles', 'paragraph_files');
$handler->display->display_options['defaults']['style_plugin'] = FALSE;
$handler->display->display_options['style_plugin'] = 'default';
$handler->display->display_options['style_options']['default_row_class'] = FALSE;
$handler->display->display_options['style_options']['row_class_special'] = FALSE;
$handler->display->display_options['defaults']['style_options'] = FALSE;
$handler->display->display_options['defaults']['row_plugin'] = FALSE;
$handler->display->display_options['row_plugin'] = 'fields';
$handler->display->display_options['row_options']['inline'] = array(
  'title' => 'title',
  'field_data_pubblicazione' => 'field_data_pubblicazione',
);
$handler->display->display_options['row_options']['default_field_elements'] = FALSE;
$handler->display->display_options['defaults']['row_options'] = FALSE;
$handler->display->display_options['defaults']['relationships'] = FALSE;
/* Relationship: Campo: Elenco dei paragrafi (field_paragrafi) */
$handler->display->display_options['relationships']['field_paragrafi_value']['id'] = 'field_paragrafi_value';
$handler->display->display_options['relationships']['field_paragrafi_value']['table'] = 'field_data_field_paragrafi';
$handler->display->display_options['relationships']['field_paragrafi_value']['field'] = 'field_paragrafi_value';
$handler->display->display_options['relationships']['field_paragrafi_value']['delta'] = '-1';
/* Relationship: Campo: Manifesto degli studi (field_documento:fid) */
$handler->display->display_options['relationships']['field_documento_fid']['id'] = 'field_documento_fid';
$handler->display->display_options['relationships']['field_documento_fid']['table'] = 'field_data_field_documento';
$handler->display->display_options['relationships']['field_documento_fid']['field'] = 'field_documento_fid';
$handler->display->display_options['relationships']['field_documento_fid']['relationship'] = 'field_paragrafi_value';
$handler->display->display_options['defaults']['fields'] = FALSE;
/* Campo: Contenuto: Nid */
$handler->display->display_options['fields']['nid']['id'] = 'nid';
$handler->display->display_options['fields']['nid']['table'] = 'node';
$handler->display->display_options['fields']['nid']['field'] = 'nid';
$handler->display->display_options['fields']['nid']['label'] = '';
$handler->display->display_options['fields']['nid']['exclude'] = TRUE;
$handler->display->display_options['fields']['nid']['element_label_colon'] = FALSE;
/* Campo: File: ID file */
$handler->display->display_options['fields']['fid']['id'] = 'fid';
$handler->display->display_options['fields']['fid']['table'] = 'file_managed';
$handler->display->display_options['fields']['fid']['field'] = 'fid';
$handler->display->display_options['fields']['fid']['relationship'] = 'field_documento_fid';
$handler->display->display_options['fields']['fid']['label'] = 'fileID';
$handler->display->display_options['fields']['fid']['alter']['alter_text'] = TRUE;
$handler->display->display_options['fields']['fid']['alter']['text'] = '[nid]_[fid]';
$handler->display->display_options['fields']['fid']['element_label_colon'] = FALSE;
/* Campo: File: Etichetta file */
$handler->display->display_options['fields']['field_etichetta_file']['id'] = 'field_etichetta_file';
$handler->display->display_options['fields']['field_etichetta_file']['table'] = 'field_data_field_etichetta_file';
$handler->display->display_options['fields']['field_etichetta_file']['field'] = 'field_etichetta_file';
$handler->display->display_options['fields']['field_etichetta_file']['relationship'] = 'field_documento_fid';
$handler->display->display_options['fields']['field_etichetta_file']['label'] = 'fileLabel';
/* Campo: File: Nome */
$handler->display->display_options['fields']['filename']['id'] = 'filename';
$handler->display->display_options['fields']['filename']['table'] = 'file_managed';
$handler->display->display_options['fields']['filename']['field'] = 'filename';
$handler->display->display_options['fields']['filename']['relationship'] = 'field_documento_fid';
$handler->display->display_options['fields']['filename']['label'] = 'filename';
$handler->display->display_options['fields']['filename']['link_to_file'] = FALSE;
/* Campo: File: Percorso */
$handler->display->display_options['fields']['uri']['id'] = 'uri';
$handler->display->display_options['fields']['uri']['table'] = 'file_managed';
$handler->display->display_options['fields']['uri']['field'] = 'uri';
$handler->display->display_options['fields']['uri']['relationship'] = 'field_documento_fid';
$handler->display->display_options['fields']['uri']['label'] = 'filePath';
$handler->display->display_options['defaults']['filter_groups'] = FALSE;
$handler->display->display_options['defaults']['filters'] = FALSE;
/* Filter criterion: Contenuto: Tipo */
$handler->display->display_options['filters']['type']['id'] = 'type';
$handler->display->display_options['filters']['type']['table'] = 'node';
$handler->display->display_options['filters']['type']['field'] = 'type';
$handler->display->display_options['filters']['type']['value'] = array(
  'bando' => 'bando',
);
/* Filter criterion: Contenuto: Data scadenza (field_data_scadenza) */
$handler->display->display_options['filters']['field_data_scadenza_value']['id'] = 'field_data_scadenza_value';
$handler->display->display_options['filters']['field_data_scadenza_value']['table'] = 'field_data_field_data_scadenza';
$handler->display->display_options['filters']['field_data_scadenza_value']['field'] = 'field_data_scadenza_value';
$handler->display->display_options['filters']['field_data_scadenza_value']['operator'] = '>';
$handler->display->display_options['filters']['field_data_scadenza_value']['default_date'] = 'now -5 year';
/* Filter criterion: File: ID file */
$handler->display->display_options['filters']['fid']['id'] = 'fid';
$handler->display->display_options['filters']['fid']['table'] = 'file_managed';
$handler->display->display_options['filters']['fid']['field'] = 'fid';
$handler->display->display_options['filters']['fid']['relationship'] = 'field_documento_fid';
$handler->display->display_options['filters']['fid']['operator'] = 'not empty';
$handler->display->display_options['path'] = 'bandi-paragraph-files-list';

/* Display: BandiParagraphFilesCounter */
$handler = $view->new_display('services', 'BandiParagraphFilesCounter', 'paragraph_files_counter');
$handler->display->display_options['defaults']['group_by'] = FALSE;
$handler->display->display_options['group_by'] = TRUE;
$handler->display->display_options['defaults']['pager'] = FALSE;
$handler->display->display_options['pager']['type'] = 'none';
$handler->display->display_options['pager']['options']['offset'] = '0';
$handler->display->display_options['defaults']['style_plugin'] = FALSE;
$handler->display->display_options['style_plugin'] = 'default';
$handler->display->display_options['style_options']['default_row_class'] = FALSE;
$handler->display->display_options['style_options']['row_class_special'] = FALSE;
$handler->display->display_options['defaults']['style_options'] = FALSE;
$handler->display->display_options['defaults']['row_plugin'] = FALSE;
$handler->display->display_options['row_plugin'] = 'fields';
$handler->display->display_options['row_options']['inline'] = array(
  'title' => 'title',
  'field_data_pubblicazione' => 'field_data_pubblicazione',
);
$handler->display->display_options['row_options']['default_field_elements'] = FALSE;
$handler->display->display_options['defaults']['row_options'] = FALSE;
$handler->display->display_options['defaults']['relationships'] = FALSE;
/* Relationship: Campo: Elenco dei paragrafi (field_paragrafi) */
$handler->display->display_options['relationships']['field_paragrafi_value']['id'] = 'field_paragrafi_value';
$handler->display->display_options['relationships']['field_paragrafi_value']['table'] = 'field_data_field_paragrafi';
$handler->display->display_options['relationships']['field_paragrafi_value']['field'] = 'field_paragrafi_value';
$handler->display->display_options['relationships']['field_paragrafi_value']['delta'] = '-1';
/* Relationship: Campo: Manifesto degli studi (field_documento:fid) */
$handler->display->display_options['relationships']['field_documento_fid']['id'] = 'field_documento_fid';
$handler->display->display_options['relationships']['field_documento_fid']['table'] = 'field_data_field_documento';
$handler->display->display_options['relationships']['field_documento_fid']['field'] = 'field_documento_fid';
$handler->display->display_options['relationships']['field_documento_fid']['relationship'] = 'field_paragrafi_value';
$handler->display->display_options['defaults']['fields'] = FALSE;
/* Campo: File: ID file */
$handler->display->display_options['fields']['fid']['id'] = 'fid';
$handler->display->display_options['fields']['fid']['table'] = 'file_managed';
$handler->display->display_options['fields']['fid']['field'] = 'fid';
$handler->display->display_options['fields']['fid']['relationship'] = 'field_documento_fid';
$handler->display->display_options['fields']['fid']['group_type'] = 'count_distinct';
$handler->display->display_options['fields']['fid']['label'] = 'total';
$handler->display->display_options['fields']['fid']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['fid']['separator'] = '';
$handler->display->display_options['path'] = 'bandi-paragraph-files-counter';
$translatables['bandi_rest_api'] = array(
  t('Master'),
  t('Bandi rest api'),
  t('more'),
  t('Apply'),
  t('Ripristina'),
  t('Sort by'),
  t('Asc'),
  t('Desc'),
  t('file from field_file_del_bando'),
  t('pubblication_date'),
  t('titolo'),
  t('end_publication_date'),
  t('Orario'),
  t('Bando_espletato'),
  t('if ([field_bando_archiviato-value]  == 1) \'\''),
  t('descrizione'),
  t('Pubblicato'),
  t('Percorso'),
  t('ID file'),
  t('Nome'),
  t('Etichetta file'),
  t('Visualizza'),
  t('Bandi'),
  t('term'),
  t('dipartimento_bando'),
  t('tax_categoria_bando_term'),
  t('[field_tr_bando_per_target-tid]'),
  t('tax_doc_e_ricerc_term'),
  t('[field_tr_bandi_per_docenti-tid]'),
  t('tax_bandi_pta_term'),
  t('[field_tr_bandi_personale-tid]'),
  t('tax_bandi_di_gara_term'),
  t('[field_tr_bandi_di_gara-tid]'),
  t('tax_bandi_per_studenti_term'),
  t('[field_tr_bandi_per_studenti-tid]'),
  t('tax_altri_bandi_term'),
  t('[field_tr_altri_bandi-tid]'),
  t('file_id'),
  t('fileName'),
  t('filePath'),
  t('fileLabel'),
  t('Nid'),
  t('paragrph'),
  t('BandiCounter'),
  t('total'),
  t('BandiParagraphFiles'),
  t('Paragraph item from field_paragrafi'),
  t('file from field_documento'),
  t('fileID'),
  t('[nid]_[fid]'),
  t('filename'),
  t('BandiParagraphFilesCounter'),
);
       
views taxonomy terms configuration
$view = new view();
$view->name = 'bandi_rest_terms';
$view->description = 'Termini di tassonomia usati nei bandi in rest per migrazione in Drupal 9';
$view->tag = 'default';
$view->base_table = 'taxonomy_term_data';
$view->human_name = 'bandi rest terms';
$view->core = 7;
$view->api_version = '3.0';
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */

/* Display: Master */
$handler = $view->new_display('default', 'Master', 'default');
$handler->display->display_options['use_more_always'] = FALSE;
$handler->display->display_options['access']['type'] = 'perm';
$handler->display->display_options['cache']['type'] = 'none';
$handler->display->display_options['query']['type'] = 'views_query';
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['exposed_form']['options']['reset_button_label'] = 'Ripristina';
$handler->display->display_options['pager']['type'] = 'full';
$handler->display->display_options['pager']['options']['tags']['first'] = '« prima';
$handler->display->display_options['pager']['options']['tags']['previous'] = '‹ precedente';
$handler->display->display_options['pager']['options']['tags']['next'] = 'seguente ›';
$handler->display->display_options['pager']['options']['tags']['last'] = 'ultima »';
$handler->display->display_options['style_plugin'] = 'default';
$handler->display->display_options['row_plugin'] = 'fields';
/* Campo: Termine della tassonomia: ID Termine */
$handler->display->display_options['fields']['tid']['id'] = 'tid';
$handler->display->display_options['fields']['tid']['table'] = 'taxonomy_term_data';
$handler->display->display_options['fields']['tid']['field'] = 'tid';
$handler->display->display_options['fields']['tid']['label'] = 'term_id';
$handler->display->display_options['fields']['tid']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['tid']['separator'] = '';
/* Campo: Termine della tassonomia: Nome */
$handler->display->display_options['fields']['name']['id'] = 'name';
$handler->display->display_options['fields']['name']['table'] = 'taxonomy_term_data';
$handler->display->display_options['fields']['name']['field'] = 'name';
$handler->display->display_options['fields']['name']['label'] = 'name';
$handler->display->display_options['fields']['name']['alter']['word_boundary'] = FALSE;
$handler->display->display_options['fields']['name']['alter']['ellipsis'] = FALSE;
$handler->display->display_options['fields']['name']['element_label_colon'] = FALSE;
/* Campo: Vocabolario della tassonomia: Nome ad uso interno */
$handler->display->display_options['fields']['machine_name']['id'] = 'machine_name';
$handler->display->display_options['fields']['machine_name']['table'] = 'taxonomy_vocabulary';
$handler->display->display_options['fields']['machine_name']['field'] = 'machine_name';
$handler->display->display_options['fields']['machine_name']['label'] = 'vocabulary';
$handler->display->display_options['fields']['machine_name']['element_label_colon'] = FALSE;
/* Filter criterion: Termine della tassonomia: Vocabolario */
$handler->display->display_options['filters']['vid']['id'] = 'vid';
$handler->display->display_options['filters']['vid']['table'] = 'taxonomy_term_data';
$handler->display->display_options['filters']['vid']['field'] = 'vid';
$handler->display->display_options['filters']['vid']['value'] = array(
  10 => '10',
  11 => '11',
  12 => '12',
  13 => '13',
  14 => '14',
  15 => '15',
);

/* Display: TaxonomyTerms */
$handler = $view->new_display('services', 'TaxonomyTerms', 'tax_terms');
$handler->display->display_options['defaults']['pager'] = FALSE;
$handler->display->display_options['pager']['type'] = 'none';
$handler->display->display_options['pager']['options']['offset'] = '0';
$handler->display->display_options['path'] = 'tax-terms';
$translatables['bandi_rest_terms'] = array(
  t('Master'),
  t('more'),
  t('Apply'),
  t('Ripristina'),
  t('Sort by'),
  t('Asc'),
  t('Desc'),
  t('Items per page'),
  t('- All -'),
  t('Offset'),
  t('« prima'),
  t('‹ precedente'),
  t('seguente ›'),
  t('ultima »'),
  t('term_id'),
  t('.'),
  t('name'),
  t('vocabulary'),
  t('TaxonomyTerms'),
);
   


Indirizzi url :


NB: Basic http authorizzation = in pp usiamo auth per lo shield attivato, in produzione bisogna attivare a services http basic authorizzation, e in auth del modulo dare le credenziali di un utente nel sito.


Ricezione dei dati lato d9

Per poter effettuare una migrazione di dati organizzati come in questo esempio che si tratti di un CT Bandi dal d7 di uniss al nuovo d9 di uniss, abbiamo bisogno di trovare un modo sia su come esporre questi dati lato d7 (anche come strutturarli etc) sia come riceverli lato d9.

Una particolarità nei bandi è una specie di campo dipendente di tassonomia, creato in questo modo. Un primo campo select che attinge valori dai termini della tassonomia "Categoria Bando", che una volta selezionato mostra un secondo campo select che viene selezionato dal valore del primo per indicare la tassonomia da mostrare (questo viene effettuato con conditional fields
e altri 5 campi). La particolarità di questo caso impone che per lo meno le tassonomie siano già esistenti prima di importare ulteriori bandi dal d7.

Grazie a questa necessità, sono stati pensati 2 moduli custom di migrazione per il d9.

  • cineca_migrate_taxonomies
  • cineca_migrate_announcements


cineca_migrate_taxonomies

Il primo deve essere installato ed eseguite le migrazioni prima della costruzione del CT Bando.

Bastano i seguenti comandi

Importazione delle tassonomie
drush en cineca_migrate_taxonomies
drush mim tax_categoria_bando_term --execute-dependencies


Descrizione di cineca_migrate_taxonomies

Il modulo in installazione crea un file json con i campi necessari per la migrazione. Serve perché le migrazioni danno errore se non trovano il file o anche le singole voci da importare.

Di seguito, tramite  l'evento MigrateEvents::PRE_IMPORT , viene importato il file json contenente i dati necessari per la migrazione.

Questo modulo utilizza i file yml di tipo taxonomy.vocabulary.vid per la creazione del vocabolario della tassonomia e i file yml di tipo migrate_plus.migration.migrationID per la migrazione vera e propria.

Al termine delle migrazioni del modulo, il file json, viene svuotato dei dati e riportato al array iniziale (chiavi senza valori), per una questione di sicurezza.



Dopo  di che è possibile proseguire con la costruzione del CT Bandi e l'installazione di cineca_migrate_announcements per migrare i bandi.

cineca_migrate_taxonomies.zip

cineca_migrate_announcements

Il modulo (cineca_migrate_announcements ) è basato su migrate_plus.

Moduli da attivare oltre al modulo custom menzionato qui sopra

d9 abilitazione moduli
drush en migrate_skip_on_404

scopo di migrate_skip_on_404 = non controlla se la riga della sorgente contiene l'url verso il file o meno, ma controlla se effettivamente il file esista per essere importato o meno.


Per lo scopo, si utilizzerà \Drupal::httpClient()->request che si preocupa a conumare i json esposti dal sito d7 di uniss e scaricare i file json localmente nel sito di d9.

Una volta ottenuti i json, che vengono chiamati tramite l'evento MigrateEvents::PRE_IMPORT , viene utilizzato per l'importazione dei file json, necessari per le migrazioni.




  • No labels