I'm working with Views 7.x RC1, Drupal 7.4 and PostgreSQL 9.0.4. I have a hierarchical content structure like this:
1:N sportclub:klantsportclub
1:N klantsportclub:betalingsportclub
(a Club can have multiple Connections; for each Connection multiple Payments may exists)
I've built a view on Sportclub with a nested relation into this structure (see export below). This view produces the following error:
SQLSTATE[42712]: Duplicate alias: 7 ERROR: table name "node_field_data_field_sportclub_aansluiting__field_data_field_k" specified more than once
This error is likely caused by views automatically generating aliasses based on field names and references, thereby exceeding the (stupid, I agree...) limit of 64 characters for aliasses in PostgreSQL. Is there a way to shorten the aliasses Views generates internally or can this be made optional?
Kind regards,
eric
----
export of view:
$view = new view;
$view->name = 'aansluitingen_van_sportclub';
$view->description = 'view op aansluitingen ("klantsportclub") van een sportclub';
$view->tag = 'default';
$view->base_table = 'node';
$view->human_name = 'aansluitingen van sportclub';
$view->core = 7;
$view->api_version = '3.0-alpha1';
$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['access']['type'] = 'perm';
$handler->display->display_options['cache']['type'] = 'none';
$handler->display->display_options['query']['type'] = 'views_query';
$handler->display->display_options['query']['options']['query_comment'] = FALSE;
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['exposed_form']['options']['reset_button_label'] = 'Opnieuw instellen';
$handler->display->display_options['pager']['type'] = 'none';
$handler->display->display_options['pager']['options']['offset'] = '0';
$handler->display->display_options['style_plugin'] = 'table';
$handler->display->display_options['style_options']['columns'] = array(
'title' => 'title',
);
$handler->display->display_options['style_options']['default'] = '-1';
$handler->display->display_options['style_options']['info'] = array(
'title' => array(
'sortable' => 0,
'default_sort_order' => 'asc',
'align' => '',
'separator' => '',
),
);
$handler->display->display_options['style_options']['override'] = 1;
$handler->display->display_options['style_options']['sticky'] = 0;
$handler->display->display_options['style_options']['empty_table'] = 0;
/* Relationship: Inhoud: Aansluiting (field_sportclub_aansluiting) */
$handler->display->display_options['relationships']['field_sportclub_aansluiting_nid']['id'] = 'field_sportclub_aansluiting_nid';
$handler->display->display_options['relationships']['field_sportclub_aansluiting_nid']['table'] = 'field_data_field_sportclub_aansluiting';
$handler->display->display_options['relationships']['field_sportclub_aansluiting_nid']['field'] = 'field_sportclub_aansluiting_nid';
$handler->display->display_options['relationships']['field_sportclub_aansluiting_nid']['required'] = 0;
$handler->display->display_options['relationships']['field_sportclub_aansluiting_nid']['delta'] = '-1';
/* Relationship: Inhoud: Betaling (field_klantsportclub_betaling) */
$handler->display->display_options['relationships']['field_klantsportclub_betaling_nid']['id'] = 'field_klantsportclub_betaling_nid';
$handler->display->display_options['relationships']['field_klantsportclub_betaling_nid']['table'] = 'field_data_field_klantsportclub_betaling';
$handler->display->display_options['relationships']['field_klantsportclub_betaling_nid']['field'] = 'field_klantsportclub_betaling_nid';
$handler->display->display_options['relationships']['field_klantsportclub_betaling_nid']['relationship'] = 'field_sportclub_aansluiting_nid';
$handler->display->display_options['relationships']['field_klantsportclub_betaling_nid']['required'] = 0;
$handler->display->display_options['relationships']['field_klantsportclub_betaling_nid']['delta'] = '-1';
/* Veld: Inhoud: Aansluitperiode */
$handler->display->display_options['fields']['field_klantsportclub_periode']['id'] = 'field_klantsportclub_periode';
$handler->display->display_options['fields']['field_klantsportclub_periode']['table'] = 'field_data_field_klantsportclub_periode';
$handler->display->display_options['fields']['field_klantsportclub_periode']['field'] = 'field_klantsportclub_periode';
$handler->display->display_options['fields']['field_klantsportclub_periode']['relationship'] = 'field_sportclub_aansluiting_nid';
$handler->display->display_options['fields']['field_klantsportclub_periode']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['field_klantsportclub_periode']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['field_klantsportclub_periode']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['field_klantsportclub_periode']['alter']['external'] = 0;
$handler->display->display_options['fields']['field_klantsportclub_periode']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['field_klantsportclub_periode']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['field_klantsportclub_periode']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['field_klantsportclub_periode']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['field_klantsportclub_periode']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['field_klantsportclub_periode']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['field_klantsportclub_periode']['alter']['trim'] = 0;
$handler->display->display_options['fields']['field_klantsportclub_periode']['alter']['html'] = 0;
$handler->display->display_options['fields']['field_klantsportclub_periode']['element_label_colon'] = 1;
$handler->display->display_options['fields']['field_klantsportclub_periode']['element_default_classes'] = 1;
$handler->display->display_options['fields']['field_klantsportclub_periode']['hide_empty'] = 0;
$handler->display->display_options['fields']['field_klantsportclub_periode']['empty_zero'] = 0;
$handler->display->display_options['fields']['field_klantsportclub_periode']['hide_alter_empty'] = 0;
$handler->display->display_options['fields']['field_klantsportclub_periode']['type'] = 'date_short';
$handler->display->display_options['fields']['field_klantsportclub_periode']['settings'] = array(
'format_type' => 'short',
'fromto' => 'both',
'multiple_number' => '1',
'multiple_from' => '',
'multiple_to' => '',
'show_repeat_rule' => 'show',
);
$handler->display->display_options['fields']['field_klantsportclub_periode']['group_rows'] = 0;
$handler->display->display_options['fields']['field_klantsportclub_periode']['delta_offset'] = '0';
$handler->display->display_options['fields']['field_klantsportclub_periode']['delta_reversed'] = 0;
$handler->display->display_options['fields']['field_klantsportclub_periode']['field_api_classes'] = 0;
/* Veld: Inhoud: Titel */
$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']['relationship'] = 'field_sportclub_aansluiting_nid';
$handler->display->display_options['fields']['title']['label'] = 'details';
$handler->display->display_options['fields']['title']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['title']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['title']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['title']['alter']['external'] = 0;
$handler->display->display_options['fields']['title']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['title']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['title']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['title']['alter']['word_boundary'] = 0;
$handler->display->display_options['fields']['title']['alter']['ellipsis'] = 0;
$handler->display->display_options['fields']['title']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['title']['alter']['trim'] = 0;
$handler->display->display_options['fields']['title']['alter']['html'] = 0;
$handler->display->display_options['fields']['title']['element_label_colon'] = 1;
$handler->display->display_options['fields']['title']['element_default_classes'] = 1;
$handler->display->display_options['fields']['title']['hide_empty'] = 0;
$handler->display->display_options['fields']['title']['empty_zero'] = 0;
$handler->display->display_options['fields']['title']['hide_alter_empty'] = 0;
$handler->display->display_options['fields']['title']['link_to_node'] = 1;
/* Veld: Inhoud: Ontvangstdatum */
$handler->display->display_options['fields']['field_betalingsportclub_ok']['id'] = 'field_betalingsportclub_ok';
$handler->display->display_options['fields']['field_betalingsportclub_ok']['table'] = 'field_data_field_betalingsportclub_ok';
$handler->display->display_options['fields']['field_betalingsportclub_ok']['field'] = 'field_betalingsportclub_ok';
$handler->display->display_options['fields']['field_betalingsportclub_ok']['relationship'] = 'field_klantsportclub_betaling_nid';
$handler->display->display_options['fields']['field_betalingsportclub_ok']['label'] = 'Betaling';
$handler->display->display_options['fields']['field_betalingsportclub_ok']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['field_betalingsportclub_ok']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['field_betalingsportclub_ok']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['field_betalingsportclub_ok']['alter']['external'] = 0;
$handler->display->display_options['fields']['field_betalingsportclub_ok']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['field_betalingsportclub_ok']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['field_betalingsportclub_ok']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['field_betalingsportclub_ok']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['field_betalingsportclub_ok']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['field_betalingsportclub_ok']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['field_betalingsportclub_ok']['alter']['trim'] = 0;
$handler->display->display_options['fields']['field_betalingsportclub_ok']['alter']['html'] = 0;
$handler->display->display_options['fields']['field_betalingsportclub_ok']['element_label_colon'] = 1;
$handler->display->display_options['fields']['field_betalingsportclub_ok']['element_default_classes'] = 1;
$handler->display->display_options['fields']['field_betalingsportclub_ok']['hide_empty'] = 0;
$handler->display->display_options['fields']['field_betalingsportclub_ok']['empty_zero'] = 0;
$handler->display->display_options['fields']['field_betalingsportclub_ok']['hide_alter_empty'] = 0;
$handler->display->display_options['fields']['field_betalingsportclub_ok']['type'] = 'date_short';
$handler->display->display_options['fields']['field_betalingsportclub_ok']['settings'] = array(
'format_type' => 'short',
'fromto' => 'both',
'multiple_number' => '',
'multiple_from' => '',
'multiple_to' => '',
'show_repeat_rule' => 'show',
);
$handler->display->display_options['fields']['field_betalingsportclub_ok']['field_api_classes'] = 0;
/* Sort criterion: Inhoud: Aansluitperiode (field_klantsportclub_periode) */
$handler->display->display_options['sorts']['field_klantsportclub_periode_value']['id'] = 'field_klantsportclub_periode_value';
$handler->display->display_options['sorts']['field_klantsportclub_periode_value']['table'] = 'field_data_field_klantsportclub_periode';
$handler->display->display_options['sorts']['field_klantsportclub_periode_value']['field'] = 'field_klantsportclub_periode_value';
$handler->display->display_options['sorts']['field_klantsportclub_periode_value']['relationship'] = 'field_sportclub_aansluiting_nid';
$handler->display->display_options['sorts']['field_klantsportclub_periode_value']['order'] = 'DESC';
/* Contextual filter: nid van sportclub */
$handler->display->display_options['arguments']['nid']['id'] = 'nid';
$handler->display->display_options['arguments']['nid']['table'] = 'node';
$handler->display->display_options['arguments']['nid']['field'] = 'nid';
$handler->display->display_options['arguments']['nid']['ui_name'] = 'nid van sportclub';
$handler->display->display_options['arguments']['nid']['default_action'] = 'not found';
$handler->display->display_options['arguments']['nid']['default_argument_type'] = 'fixed';
$handler->display->display_options['arguments']['nid']['default_argument_skip_url'] = 0;
$handler->display->display_options['arguments']['nid']['summary']['number_of_records'] = '0';
$handler->display->display_options['arguments']['nid']['summary']['format'] = 'default_summary';
$handler->display->display_options['arguments']['nid']['summary_options']['items_per_page'] = '25';
$handler->display->display_options['arguments']['nid']['break_phrase'] = 0;
$handler->display->display_options['arguments']['nid']['not'] = 0;
/* Filter criterion: Inhoud: Gepubliceerd */
$handler->display->display_options['filters']['status']['id'] = 'status';
$handler->display->display_options['filters']['status']['table'] = 'node';
$handler->display->display_options['filters']['status']['field'] = 'status';
$handler->display->display_options['filters']['status']['value'] = 1;
$handler->display->display_options['filters']['status']['group'] = 0;
$handler->display->display_options['filters']['status']['expose']['operator'] = FALSE;
/* Filter criterion: Inhoud: Type */
$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(
'sportclub' => 'sportclub',
);
/* Display: Content pane */
$handler = $view->new_display('panel_pane', 'Content pane', 'panel_pane_1');
$handler->display->display_options['argument_input'] = array(
'nid' => array(
'type' => 'context',
'context' => 'entity:node.nid',
'context_optional' => 0,
'panel' => '0',
'fixed' => '',
'label' => 'nid van sportclub',
),
);
$translatables['aansluitingen_van_sportclub'] = array(
t('Master'),
t('more'),
t('Apply'),
t('Opnieuw instellen'),
t('Sort by'),
t('Asc'),
t('Desc'),
t('field_sportclub_aansluiting'),
t('field_klantsportclub_betaling'),
t('Aansluitperiode'),
t('details'),
t('Betaling'),
t('Alle'),
t('Content pane'),
t('View panes'),
);
Comments
Comment #1
dawehnerThere is another issue already: #571548: Identifiers longer than 63 characters are truncated, causing Views to break on Postgres
Comment #2
dawehnerThere is another issue already: #571548: Identifiers longer than 63 characters are truncated, causing Views to break on Postgres