I have two content types, a "record" and a "report". The report allows a user to file a "report" on a "record", so "report" contains a node reference field (field_ref) where the user can select the relevant record node. In the display of any record node I need to show a list of any reports relating specifically to that record. I've tried configuring a view block to expose on each record node using a relationship with the node reference field and a contextual filter set to "provide default value" of "content ID from URL", but I can't get it working. The view export is below.

Whilst writing, when testing using "preview with contextual filters", am I meant to paste in that field the URI of a test "record" node? e.g. /record/my-record-title (I have created a test report referencing this record, so am assuming when the view works, the preview will show the fields for the related report).

Thank you for any help

$view = new view();
$view->name = 'report_reference';
$view->description = '';
$view->tag = 'default';
$view->base_table = 'node';
$view->human_name = 'Report reference';
$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'] = 'Report reference';
$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['pager']['type'] = 'some';
$handler->display->display_options['pager']['options']['items_per_page'] = '0';
$handler->display->display_options['pager']['options']['offset'] = '0';
$handler->display->display_options['style_plugin'] = 'default';
$handler->display->display_options['row_plugin'] = 'fields';
/* Header: Global: Text area */
$handler->display->display_options['header']['area']['id'] = 'area';
$handler->display->display_options['header']['area']['table'] = 'views';
$handler->display->display_options['header']['area']['field'] = 'area';
$handler->display->display_options['header']['area']['content'] = 'Reports on this record';
$handler->display->display_options['header']['area']['format'] = 'filtered_html';
/* Relationship: Entity Reference: Referenced Entity */
$handler->display->display_options['relationships']['field_ref_target_id']['id'] = 'field_ref_target_id';
$handler->display->display_options['relationships']['field_ref_target_id']['table'] = 'field_data_field_ref';
$handler->display->display_options['relationships']['field_ref_target_id']['field'] = 'field_ref_target_id';
/* Field: Content: Date of occurrence */
$handler->display->display_options['fields']['field_date']['id'] = 'field_date';
$handler->display->display_options['fields']['field_date']['table'] = 'field_data_field_date';
$handler->display->display_options['fields']['field_date']['field'] = 'field_date';
$handler->display->display_options['fields']['field_date']['relationship'] = 'reverse_field_ref_node';
$handler->display->display_options['fields']['field_date']['settings'] = array(
  'format_type' => 'short',
  'fromto' => 'both',
  'multiple_number' => '',
  'multiple_from' => '',
  'multiple_to' => '',
);
/* Field: Content: Type of report */
$handler->display->display_options['fields']['field_type_of_report']['id'] = 'field_type_of_report';
$handler->display->display_options['fields']['field_type_of_report']['table'] = 'field_data_field_type_of_report';
$handler->display->display_options['fields']['field_type_of_report']['field'] = 'field_type_of_report';
$handler->display->display_options['fields']['field_type_of_report']['relationship'] = 'reverse_field_ref_node';
/* Field: Content: Title */
$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'] = '';
$handler->display->display_options['fields']['title']['element_label_colon'] = FALSE;
/* Sort criterion: Content: Post date */
$handler->display->display_options['sorts']['created']['id'] = 'created';
$handler->display->display_options['sorts']['created']['table'] = 'node';
$handler->display->display_options['sorts']['created']['field'] = 'created';
$handler->display->display_options['sorts']['created']['order'] = 'DESC';
/* Contextual filter: Content: Nid */
$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']['default_action'] = 'default';
$handler->display->display_options['arguments']['nid']['default_argument_type'] = 'node';
$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']['validate']['type'] = 'node';
$handler->display->display_options['arguments']['nid']['validate_options']['types'] = array(
  'theft_report' => 'theft_report',
);
/* Filter criterion: Content: 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(
  'report' => 'report',
);
/* Filter criterion: Content: ref (field_ref) */
$handler->display->display_options['filters']['field_ref_target_id']['id'] = 'field_ref_target_id';
$handler->display->display_options['filters']['field_ref_target_id']['table'] = 'field_data_field_ref';
$handler->display->display_options['filters']['field_ref_target_id']['field'] = 'field_ref_target_id';
$handler->display->display_options['filters']['field_ref_target_id']['relationship'] = 'field_ref_target_id';

/* Display: Block */
$handler = $view->new_display('block', 'Block', 'block');

Comments

MustangGB’s picture

Status: Active » Closed (outdated)