这个问题是关于Drupal管道的。我知道如何使用“视图”查询构建器呈现与单个内容关联的多个分类术语。我无法弄清楚View是如何实际查询数据库以完成工作的。
例如,视图显示包含一个或多个标记的博客帖子列表很容易:
Title: "Brett Favre is Hurt"
Body: "blah blah blah"
Tags: Football, Injury
Title: "Cliff Lee Signs Contract"
Body: "blah, blah, blah"
Tags: Baseball, Free Agency, Philadelphia
我似乎无法弄清楚Views是如何拉动多个标签并使用每个内容项呈现它们的。视图预览查询不显示任何涉及分类的SQL。
我的猜测是,在分类法“字段”中正在进行各种子查询,或者查询会提取多个记录,并以某种方式将字段和标题分组(这看起来效率很低)。
我正在尽力遵循自定义模块的Drupal标准实践,并且我想知道Drupal Views人员如何运行这些查询,因为它们运行得非常快。
答案 0 :(得分:1)
它是在pre_render()函数中执行的,使用单独的查询,请参阅views 2 api documentation。
当试图弄清楚Views是如何做X的时候,我总是试图弄清楚这会发生在哪个处理程序中。因为所有这些都被分成不同文件中的类(通常在modules / module_name文件夹下面)