Why Views Data relationship between custom entity type and node doesn't work? Fields names are equal in both tables.

Inside hook_views_data:

  $data['stream']['table']['join'] = array(
    'node' =&gt; array(
      'left_field' =&gt; 'nid',
      'field' =&gt; 'nid',
    ),
  );

 $data['stream']['nid'] = array(
    'title' =&gt; t('Related node'),
    'help' =&gt; t('Node related to stream item.'),
    // Define a relationship to the {node} table, so example_table views can
    // add a relationship to nodes. If you want to define a relationship the
    // other direction, use hook_views_data_alter(), or use the 'implicit' join
    // method described above.
    'relationship' =&gt; array(
      'base' =&gt; 'node', // The name of the table to join with.
      'base field' =&gt; 'nid', // The name of the field on the joined table.
      'field' =&gt; 'nid',
      'handler' =&gt; 'views_handler_relationship',
      'label' =&gt; t('Default label for the relationship'),
      'title' =&gt; t('Title shown when adding the relationship'),
      'help' =&gt; t('More information on this relationship'),
    ),
  );


(similar to example from api page)

but there isn't above relation in Add relationships box. Could some one give me any hint?
I solved it by this way:

$data['stream']['table']['join'] = array(
  'node' =&gt; array(
    'left_field' =&gt; 'nid',
    'field' =&gt; 'nid',
    'handler' =&gt; 'views_join', // this is actually optional
    'left_table' =&gt; 'node'
  ),
);


$data['stream']['nid'] = array(
    'title' =&gt; t('Related node'),
    'help' =&gt; t('Node related to stream item.'),

    'field' =&gt; array(
      'handler' =&gt; 'views_handler_field_numeric',
      'click sortable' =&gt; TRUE,
    ),

    'filter' =&gt; array(
      'handler' =&gt; 'views_handler_filter_numeric',
      'allow empty' =&gt; TRUE,
      'help' =&gt; 'Filter on a related node nid.',
    ),
    'argument' =&gt; array(
      'handler' =&gt; 'views_handler_argument_numeric',
      'numeric' =&gt; TRUE,
      'validate type' =&gt; 'nid',
      'help' =&gt; 'Argument on related node nid.',
    ),
    'sort' =&gt; array(
      'handler' =&gt; 'views_handler_sort',
      'help' =&gt; 'Sort on related node nid field.',
    ),
    'relationship' =&gt; array(
      'title' =&gt; t('Stream node'),
      'help' =&gt; t('Relation to node related to current stream item'),
      'label' =&gt; t('Stream node'),
      'base' =&gt; 'node',
      'base field' =&gt; 'nid',
    ),
  );