Think in Drupal 第2集
基于Drupal7+Ubercart3搭建社区型电子商务
目录
前言 6
初识Drupal 8
安装Drupal 8
基于Drupal7+Ubercart3搭建社区型电子商务
目录
前言 6
初识Drupal 8
安装Drupal 8
经过两个月的辛苦写作,终于又有了一本THink in Drupal ,作为Think in drupal系列中的一份子,第二集将会延续已有的质量和品质。
此外,原创性得到了增强,如果Think in Drupal上册只有60%的原创的话,那么Think in Drupal第二集,则是95%的原创,作为一部书籍来说,除了程序部分引用了少许的网络资源以外,其余全部原创,我相信,只有原创的,才会拥有100%的版权。
此外,THink in Drupal将会作为一个系列的名字,而不是单独的一本书的名字。
在一个刚刚迁移过的站点上,创建新的节点,保存表单的时候出现PDO错误,错误消息如下:
PDOException: SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'vid' cannot be null: INSERT INTO {node} (vid, type, language, title, uid, status, created, changed, promote, sticky) VALUES (:db_insert_placeholder_0, :db_insert_placeholder_1, :db_insert_placeholder_2, :db_insert_placeholder_3, :db_insert_placeholder_4, :db_insert_placeholder_5, :db_insert_placeholder_6, :db_insert_placeholder_7, :db_insert_placeholder_8, :db_insert_placeholder_9); Array
。。。
一周前,自己发布了Field validation 7.x-2.0-beta2,同时发布的还有Field validation 7.x-1.0。1.0在完成了最后一个也是第一个稳定的版本后,就进入了坟墓当中。这是因为2.0的存在。按照计划,我是打算这个时候发布一个稳定的版本的,毕竟用的人已经很多,而且bug很少。
最初的打算,是使用ctools模块,来实现导入导出功能,这个在1.0版本中已经实现,在实现这个功能以后,自己突然觉得,如果validator采用ctools的plugin机制,效果应该会更好。这是很久以前的想法了,一直觉得很困难,觉得是只有高手中的高手才使用的技术。
我觉得自己达到了可以采用这一技术重新架构自己模块的地步了,我一度怀疑自己是否可行,最终决定向这个目标前进,读了好几篇相关的文章。尝试,再尝试,终于实现了最初的原型7.x-2.0-alpha1,在这个版本下面,自己证明了,这种方案的可行性。接着是2.0-beta1,2.0-beta2的发布。自己终于实现的想法。
一年以前的一个想法,自己终于实现了,像feeds模块里面plugins一样,自己在自己的模块里面实现了ctools的plugin。看着那整齐划一的代码,看着那自然而然的目录结构,这是我写的么?我从drupal.org上面,把自己上传的最新版本又下载到本地,一次又一次的阅读里面的代码,我一度无法相信这是我自己写的。
平时我们处理日期和日历时,大多数都使用date和Calendar模块,它们能帮我们很方便的存储和显示日历型的日期。这种类型的一个重要的特点,就是总能转化为时间戳。
但是,如果我们想存储另一种类型的时间,比如一首歌或者视频的时间长度,此时我们关心的只是,它有多少分钟,多少秒。在这种情况下,Date模块就有点不合适了。而此时,我们则可以使用HMS字段模块。
该模块的项目地址: http://drupal.org/project/hms_field 。
HMS字段模块,它的功能,就和它的名字完全符合,H表示小时,M表示分钟,S表示秒。
在数据库中,它存储了该时间长度有多少秒。但是提供了多种格式,输入格式和显示格式。比如"5:45," 。
为这个字段自定义显示格式也相对简单,与Views的集成也相当友好,在views里面可以方便的使用这个字段来排序和过滤。
不知道是不是一个4.1日的笑话,但是很多消息也是这个时候宣布的。
Drupal圈内的13家领先的公司:
•Lullabot
•NodeOne
•Phase2 Technology (formerly merged with Treehouse)
•Chapter Three
•Four Kitchens
•The Fifth Element
•ImageX Media
•Palantir
•Gorton Studios
•Volacci
•Pantheon
•Aten Design Group
•Advantage Labs
合并成为了一个公司。这就是Bluemarine Synergistics。
Bluemarine 曾经是Drupal里面的一个核心主题的名字。
合并后的公司年收入12亿美金,远超过Acquia。
因为这些公司相信,将来Drupal圈内只会存活一个巨无霸,大家都很担心Acquia的发展与自己利益的冲突,合并能够很好的解决这个问题。
项目地址:http://drupal.org/project/hint,
超级好用的小模块,你别看这些模块安装量小,但是他们解决了特定问题,用起来 很方便,Hint模块就是这样的模块。
Hint模块提供以下 功能 :
比如一个搜索 表单 ,但你输入搜索关键字以前,输入框内通常有这样的提示“请输入搜索关键字” ,当你的鼠标点上去时 ,这几个字自动 消失,此时你可以的输入相应的内容。如果你没有输入任何内容,鼠标移开,那么“请输入搜索关键字”就又会显示出来。
我们可以自己使用jquery来实现这样的效果,当然,也可以安装现成的模块,这就是 hint模块,他自动实现了 Drupal的 搜索表单,登录表单的 这一功能,而且是使用表单元素的label作为提示,用起来很方便。 很早以前用过 ,今天又要用,找起来很费劲,这里记录一下。 另外,这个模块是由lullabot的quicksketch开发的,质量上乘。
今天有件高兴的事情,Field validation模块的issue列表中,又多了一个issue(问题)。高兴是因为提交这个issue的人,是page title,Global Redirect模块的作者,或许大多数人并不熟悉作者的名字,但是对他写的模块应该都用过一些。这是两个用的比较多的模块,两个模块排在http://drupal.org/project/modules?page=1比较靠前的位置。 Top 40 名的模块。
为上周写的模块http://drupal.org/project/field_collection_views, 找到一个维护者。自己没有时间维护这个模块,发现别人在用,开始还真有点舍不得,好不容易占了一个很好的坑,却要让给别人。不过新的维护者vasike也是一个很出色的程序员,在Drupal.org上贡献过多个模块,有的安装已经接近10000了,比我的加在一块都多。