1

我在“User”和“CustomModule”中都有自定义字段“country_id_c”,我需要限制用户只能看到他所在地区的行(按 country_id_c 过滤)。有两种搜索形式:

  1. 当您从菜单中看到 CustomModule 的搜索结果时

  2. 当您使用选择器(弹出窗口)将 CustomModule 添加为与其他模块的关系时。

我发现如何使用硬编码值过滤 1 种情况下的结果:

文件:custom/modules/CustomModule/metadata/SearchFields.php

$searchFields['CustomModule'] = array (
...
'country_id_c' =>
array (
  'query_type' => 'format',
  'operator' => '=',
  'value' => 'Argentina',
  'db_field'=>array('country_id_c',)
),
...

我在这里缺少的是如何获取当前登录用户的 country_id_c。以及如何对 (2) 搜索表单执行相同操作。

4

1 回答 1

2

您可以通过添加以下内容来访问该值:

globals $current_user;
$current_user->country_id_c 
于 2013-04-20T05:25:28.427 回答