Add edit link to a view for admins only
You can implement hook_field_attach_view_alter to hide the field you've mentioned.

my_module_field_attach_view_alter(&amp;$output, $context) {
  global $user;

  // check if the content is what you want to alter
  if ($context['entity_type'] != 'node'] || $content['view_mode']=='my_display') return;

  // only user with 'administrator' role can see
  $output['my_field']['#access'] = in_array('administrator', $user-&gt;roles));
}


enter link description here