Drupal 中 views 的用法

PHPABC Drupal 1,185 次浏览 , 没有评论

在drupal中使用views模块会上瘾的!我说的是真的。
以前在drupal中从来不用views,都是自已写sql语句查询,然后根据设计页面,达到想要的效果。不用views的原因是设置太烦,我看见一大堆 参数就头痛,不愿意花时间来仔细研究每个参数的具体用法,这几天在drupal.org上试着读了几篇views的教程,然后一步步实验了一下,此后,用 views大有一发不可收拾之势。

下面,把我所体会到的一点Views用法概括一下.
views用法 views教程
这是一张views页面的截图,左边的Defaults一项,是设置views的类型的,你可以设一page类型(可以通过URL访问),block类型 (可以出现在block设置页面,你随便放哪里)。还有feed,attachment,这二个我没有用过,大概是用来做RSS和把多个views合在一 起的。

basic settings

basic settings就不说了,一看都知道是用来做什么的,不过有一点Theme:Information我想很重要。点击它,会列出这个views用到的所 有pages,根据这些信息,你可以在自已的theme中创建所需的page,然后自定义页面的布局,这一点在定制开发中将非常有用。

page settins

如果views是page类型,用出现这个page settings项,在这里你可以设置这个页面的path和menu,这个也非常简单

Relationships

这里可以设置相关联的项,比如Comment: User,可以设置显示某一个用户或当前用户的comment.还有Taxonomy: Parent term,如果在Taxonomy中有父子相关的项,这里就可以设置相应的显示了。

Arguments

我想这是最重要的一项了,参数。在这里,可以动态改变views的内容。这里有点像URL中的?后面的参数。
views中的arguments
上面是argument的一张图。其中的wildcard是通配符,就是显示所有项的RUL,比如我要显示用户为3的所有comment,如果我在 views中path设为comment,我就可以通过http://localhost/comment/3方式来访问,而如果要访问所有 comment,如果这里的wildcard设为all,就可以http://localhost/comment/all,如果wildcard设 为*,则可以通过http://localhost/comment/*来访问所有的comment.在这里有一个很有用的选项,就是默认的参 数,provide default argument.在 action to take if argument is not present这一项的最下面。
views中的arguments默认值
当URL中没有参数传来时,这里可以设置一个默认的值。比如第一项,fixed entry,你可以输入一个固定的值,也可以用PHP code动态的产生。

sort

sort就是按照什么规则排序,很简单

Filters

Filters也挺重要的。这个就是views的一个过滤器,想要什么,不要什么,都可以通过这里来实现。比如你要node类型为article的,可以 Type=article方式来实现。如果你的drupal是多国语言,那这个选项是一定要用到的,通过filters,可以在切换不同语言的时候显示不 同的语言列表,关于多国语言,接下来会有一个专门的说明。
OK,view的设置就这么简单,你只需要通过鼠标点几下就可以实现大部分的功能了,接下来的事情就交给美工来调整页面了,再也不用像以前那样手写sql 语句了,通过views实现列表迅速而不容易出错,那么,你还有什么理由不用views呢

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

Go