[英]Drupal 6 views field hanlder for two fields
在我的自定义模块中,我有一个像这样的表:
aid | int(10) unsigned
message | mediumtext
variables | mediumtext
这类似于看门狗的架构。
我想将消息字段公开给视图(hook_views_data),但要通过将其与变量字段一起转换的处理程序公开。 像这样:
t($message, unserialize($variables))
有谁知道如何组合两个字段并使用字段处理程序来做到这一点?
这是我的hook_views_data
/**
* Implementation of hook_views_data().
*/
function mymodule_views_data() {
$data['gccsi_activity']['aid'] = array(
'title' => t('Unique ID'),
'help' => t('The unique id'),
'sort' => array(
'handler' => 'views_handler_sort',
),
);
$data['gccsi_activity']['message'] = array(
'title' => t('Message'),
'help' => t('The message...'),
'sort' => array(
'handler' => 'views_handler_sort',
)
//here is where I want to create a handler that combines two fields
);
return $data;
}
谢谢
如果已实现hook_views_data,则可以设置使用的处理程序。
$data['table']['column']['id']['field'] = array(
'handler' => 'yourmodule_handler_field_column',
);
然后,实现hook_views_handlers来注册使用的处理程序。
然后,编写您的处理程序并执行以下步骤。 假设您有一个要发送的消息
a)在方法构造中
$this->additional_fields['variables'] = 'variables';
b)在方法渲染中做您以前的工作
t($values->{$this->field_alias}, unserialize($values->{$this->aliases['variables']}));
views高级帮助部分是查找有关viewsapi的一些常规信息的好地方
据我所知,处理程序类必须存在于它自己的文件中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.