You are here

第1章 实体(Entity)API

admin 的头像
Submitted by admin on 星期三, 2015-08-26 09:11

  作者:老葛,北京亚艾元软件有限责任公司,http://www.yaiyuan.com

节点系统,在Drupal里面的历史悠久,是很早很早以前,就有了的一种机制。慢慢的,围绕着节点系统,出现了Flexinode,我们看这个模块的创建日期,200428日,快9年了,Flexinode允许用户创建新的内容类型,并为内容类型添加字段,随着技术的进步, Flexinode的实现机制跟不上了发展的需要;两年后,也就是2006年,出现了CCK模块,此时Drupal的版本还是4.7;随后,CCK取代了Flexinode,发展成为了Drupal5Drupal6下面的标准实现;并最终进入了Drupal7的内核,当然进入Drupal7后,名字改为了Field

    在Drupal5、 Drupal6下面,随着CCK的日趋流行,它给节点系统带来了极大的灵活性,在Drupal 5、 Drupal6两个版本下,CCK是仅支持节点系统的。在Drupal社区当中,一种声音愈来愈强,这就是将评论、区块、用户Profile以及很多其它系统,转为节点系统的声音。读过Drupal专业开发指南中文版的用户,在里面的节点系统一章,讲过一个问题,不是一切东西都是节点,里面讲述了为什么不把评论处理成为节点,很多人都知道这个道理,但是把所有系统,向节点系统靠拢的趋势,一直存在着,并且影响越来越广。为什么会这样?因为CCK模块的存在,使得节点系统非常的灵活。

1.png

     在这种趋势的影响下,出现了Node as BlockNode commentContent Profile等流行模块,它们将区块、评论、profile建立在了节点系统之上,这样就可以方便的利用CCK了。随着,这些模块的流行,人们也逐渐的意识到了,这种方式的局限性。有哪些局限性呢?在节点系统中,除了CCK字段以外,它还有自己属性,比如作者、创建日期、修改日期、标题、nid、置顶、推到首页等等,很多这样的属性,这些属性对于其它系统可能是多余的无用的,所以人们还需要编写模块来隐藏这些属性,或者自动设置某些属性,比如对于标题,就存在一个Automatic Nodetitles,帮助用户隐藏多余的标题。


Drupal版本: