0

我正在 Drupal 中创建一个自定义表单。在这种形式中,我希望创建一个选择框。在此框中,我希望列出站点上的所有用户。保存我的表单时,这将填充引用用户的 CCK 字段。

我知道要创建我使用的选择列表:

$form['access']['timer'] = array(
    '#type' => 'select',
    '#title' => t('Discard logs older than'),
    '#default_value' => variable_get('timer', 259200),
    '#options' => $period,
    '#description' => t('The timer.'),
  );

http://drupal.org/node/751826

我需要知道的是如何获得正确的数据来设置#options

4

1 回答 1

0

创建选择字段确实是您需要做的最简单的事情。您还应该查看 drupal 表单 API 参考。在 api.drupal.org 上有一个链接。

无论如何,您想要的是在选择中显示用户名,但表单中的值是用户 ID,这就是 CCK 需要的。为此,您需要创建一个键控数组

$options = array(
  $uid => $name,
   ...
);

要创建选项,您需要使用 db_query 查询用户表并将所有用户添加到数组中。

于 2010-11-13T21:19:59.080 回答