我需要在非节点的drupal中构建视图,实际上是drupal外部的对象。我正在调用的api将一个stdClass对象传回给我。
任何人都有关于如何让Views2显示非节点对象的想法吗?
答案 0 :(得分:5)
我对视图2的理解是它用于处理存储在数据库中的信息。
如果您无权访问编写API的数据库,请考虑将API返回的对象写入表中。最简单的事情可能是从对象创建节点。然后,您可以使用视图2访问它们。
这类似于Acitivty Stream模块(http://drupal.org/project/activitystream)采用的方法。它根据各种API返回的数据创建节点。查看模块的代码,了解如何创建节点的示例:
另一方面,如果您有权访问源数据库,则可以考虑直接将该数据库的表公开给Views。这是CiviCRM v2.2.3中包含的最新Views 2集成代码中采用的方法,您可以在此处查看:
http://svn.civicrm.org/civicrm/trunk/drupal/modules/views/
CiviCRM是一个Drupal模块,它将数据写入Drupal数据库之外的表 - 而不是节点。视图集成代码将大多数表暴露给Drupal。
希望这有帮助。
- 安德鲁B。
答案 1 :(得分:1)
根据Views 3 roadmap,Views最终将与非SQL数据源一起使用。与此同时,使用Flikr API as a proof-of-concept.
在这一领域开展了一些非常初步的工作答案 2 :(得分:1)
已在最新的6.x-1.x-dev分支中修复。除节点外,VBO现在还支持用户和注释。特殊的hook_object_info可用于支持任何其他类型的对象。请尝试一下,让我知道!
答案 3 :(得分:0)
您必须将自定义数据公开给此处描述的视图:
http://www.darrenmothersele.com/drupal-blog/drupal-views2-handlers http://views-help.doc.logrus.com/help/views/api-tables
答案 4 :(得分:-1)
构建视图专门用于处理节点+ CCK。如果要为自定义页面创建视图,则需要编写一些额外的模块+主题页面。