features 模块试用记录

论坛: 

看到很多人介绍用features这个模块,应该说是开发者必用的模块,好奇也有试用的意思,做个试用记录,希望能记忆起来并能给后学者有帮助:

 

一直以来,Drupal都没有有效的方法可以管理 views的设定参数
意思是说,例如测试环境对 views 模块所做的变更,没有方便的方法可以将它转移到真的对外服务器之上,而只能用 mysqldump,或者复杂的使用 views 的export,相似的问题出现在cck上。
最新的解决方法就是features 模块,它的主题功能是将选取的设定输出到一个全新的,自定义名称的“设定模块”,让你下载, 解压, 上传,启用 “设定模块”,然后只要 views cck 设定有变,features模块会知道,
并给与:
输出(输出新的“设定模块”到真的对外环境)
还原(还原到“设定模块”的设定)
而你从此就可以对views 和 cck 的设定参数做SCM了
 
  居然才知道features这个强大且有用的模块
1,features的简单介绍
   features可以轻易将用户自己对views,cck等自定义修改部分以模块的形式导出。导出后,任何人可以通过这个导出模块,在其他的drupal网站应用那些应用。
   打个比喻,如果说views和cck是修建一座房子,那么features便可以瞬间将某个修建好的房子复制出来。features功能使drupal变得极其方便移植开发。Drupal Commons 其实就是利用Features来导出整理模块的。
   Features在drupal6,7都有稳定版的产品。
2,features的安装
   在drupal网站http://drupal.org/project/features 下载软件包,放置在sites/all/modules目录下。
3,feature模块管理页面
    进入 admin/build/features页面,我们可以看到如下页面
    Features主要包括两大部分功能,一是对现有features的修改整理,二是创建自己的Feature。
   修改,也就是上图manage下的功能十分简单(至少对会创建feature的人来说非常简单),我们就不介绍了,下面的章节,我们将主要介绍如何制作一个feature。
4,做几个自定义内容
   如下图,在admin/content/node-type/blog/fields中为BLOG这个内容类型下添加一个名为subtitle的字段。   
  为新添加的字段设置属性。 
然后,我们便可以在admin/content/node-type/blog/fields看到新添加的字段。
在admin/build/views/add 下再添加一个自定义views。
添加成功后的view:
准备做好,继续我们下面的操作。
5,创建 feature
进入 admin/build/features/create 页面,添好名字描述后选择编辑组件中的cck:
 可见刚刚创建的字段已经在列表中了,选择之;
 继续选择编辑组件中的views:
可见刚刚创建的view也已经在列表中了,选择之;
 注意,勾选后我们可以在右侧的列表中看到所有已经选择的内容,这样我们可以说已经将所有选择的项目加载入了一个模块,点击下面的download feature下载已经完成的feature.
6,任务完成
将该模块放置在任何网站的/site/all/modules下,安装后,就可以使用我们上面所作新cck和新views的完美备份。
 

 

features这个模块是干嘛用的?
将一些drupal里的配置导成一个模块 安装导出的模块 即可与原站的一些配置同步,不用自己手动再设置一次.
其他相关模块:http://drupal.org/project/strongarm
strongarm 是將模块设置输出,用drupal term 即是drupal variables 
也就是是d8将要解決的配置問題configuration managment
 
Features -- 小金山级模块,配置迁移,UI代码化,各种数据结构导入导出,开发生产环境部署
 
Features安装后在配置里面找不到设定的地方,只能在模块中有个帮助,点击帮助出现页面最下面有个链接,再次点击出来就是管理和设定的地方。
 
我个人的理解就是你开发中或开发后,再次修改模块配置后,导出用,在另外一个站点按照安装模块的方式把这个导出的所谓模块安装一下,安装之前一定要细看那些模块是开启的,如果所谓的模块中有开启的提示但你又没有开启后直接安装使用这个模块,那你惨了,重来吧。
 
这个模块应该有个好处就是你设计的模块能直接导出到别的网站使用而不用重新设置一次。
 
先做这个说明,后面继续完善。