PHP   发布时间:2022-04-09  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了php – Drupal 7 – 自定义查看与自定义表,没有数据显示大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我写了一个模块来使用Drupal 7与Views 3进行接口,但是当我使用自定义表格作为数据源创建一个视图时,没有数据显示.这是 @L_944_4@的架构
+-------------+------------+------+-----+---------+----------------+
| Field       | Type       | Null | Key | Default | Extra          |
+-------------+------------+------+-----+---------+----------------+
| id          | int(11)    | NO   | PRI | NULL    | auto_increment |
| title       | MEDIUMTEXT | NO   |     | NULL    |                |
| Department  | text       | NO   |     | NULL    |                |
| credits     | int(10)    | NO   |     | NULL    |                |
| description | longtext   | NO   |     | NULL    |                |
+-------------+------------+------+-----+---------+----------------+

这是my_module.views.inc中的钩子覆盖:

function my_module_views_data() {
  $tablename = 'My_Awesome_Table';
  $data = array();
  $data[$tablename]['table']['group'] = t('Courses');

  $data[$tablename]['table']['base'] = array(
    'field' => 'id','title' => t('Courses'),'Help' => t("Contains courses,departments,and descriptions.")
  );

  $data[$tablename]['title'] = array(
    'title' => t('Course name'),'Help' => t('Course name'),'field' => array(
      'handler' => 'views_handler_field','click sortable' => TRUE,),'sort' => array(
      'handler' => 'views_handler_sort','filter' => array(
      'handler' => 'views_handler_filter_String','argument' => array(
      'handler' => 'views_handler_argument_String',);

  $data[$tablename]['Department'] = array(
    'title' => t('Course department'),'Help' => t('Course department'),);

  $data[$tablename]['credits'] = array(
    'title' => t('Credits'),'Help' => t('number of credit hours'),'argument' => array('handler' => 'views_handler_argument_numeric'),'filter' => array('handler' => 'views_handler_filter_numeric'),'sort' => array('handler' => 'views_handler_sort_numeric')
  );

  $data[$tablename]['description'] = array(
    'title' => t('Course description'),'Help' => t('Course description'),);

  $data[$tablename]['id'] = array(
    'title' => t('Unique identifier'),'Help' => t('PriMary key for table'),'field' => array('handler' => 'views_handler_field'),'sort' => array('handler' => 'views_handler_sort_numeric'));

  return $data;
}

我的映射有什么问题吗?当我创建一个视图时,我正在尝试一个简单的无格式列表,并只显示每个字段的标签.显示数据的唯一字段是id,我表中的所有id值都在那里.我尝试向视图添加过滤器,以便课程部门!=空白和课程名称!=空白,这不会消除任何结果(基于显示的ids).这是查询视图正在生成

SELECT My_Awesome_Table.title AS My_Awesome_Table_title,My_Awesome_Table.Department AS My_Awesome_Table_Department,My_Awesome_Table.description AS My_Awesome_Table_description,My_Awesome_Table.credits AS My_Awesome_Table_credits,My_Awesome_Table.id AS id
FROM {My_Awesome_TablE} My_Awesome_Table
WHERE (( (My_Awesome_Table.Department NOT LIKE '' ESCAPE '\\') AND
  (My_Awesome_Table.title NOT LIKE '' ESCAPE '\\') ))

当我在@L_989_15@myAdmin中运行它时,只需从My_Awesome_Table周围删除{和},它返回结果,每列中都有数据.

编辑:这可能与我在另一个数据库中为另一个表另外创建了一个自定义view模块相关联,它的工作正常.我使用该模块作为这个模块的基础,更改模块名称,函数前缀等.

清除缓存,禁用模块’my_module’,保存,然后启用它,保存

在我的开发中,我必须添加这个钩子使其工作

function my_module_views_api() {
    return array('api'=>2.0);
}

大佬总结

以上是大佬教程为你收集整理的php – Drupal 7 – 自定义查看与自定义表,没有数据显示全部内容,希望文章能够帮你解决php – Drupal 7 – 自定义查看与自定义表,没有数据显示所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。