2013-08-19 35 views
1

我完全有可能以错误的方式来解决这个问题,这可能是我努力寻找答案的原因,就像Rails的典型方式。测试导轨项目/应用程序模板

为了清楚起见,我指的是“rails new”的-m选项,例如。

rails new [new-project] -m [this is where my template goes]

我已经创建了一个项目/应用程序模板,以加快特定项目类型的创作,与认为进一步的项目/产品都会有自己的模板也。

该模板添加了相关的gem并做了一些家务来整理gem安装的输出(例如将JS/CSS文件移动到/ vendor),以及通过生成器进行复制以提供选项进一步扩大项目。

我在努力了解是否有方法来测试项目模板是否按预期工作并复制正确的文件。

我是否以正确的方式处理了这个问题,并且有办法测试项目/应用程序模板吗?

编辑 - 进一步的研究表明,引擎可能是一个更好的解决方案。这是否准确?

回答

1

Rails引擎是一种打包某些应用程序或应用程序子集的方法,因此很容易与其他应用程序共享。基本上,如果您有一些可以由多个应用程序共享的模型和控制器,则可以使用引擎。这听起来很像你所描述的项目模板。引擎可以被打包为宝石,宝石可以像引擎一样自动运行,包括rake任务,钩入Rails初始化等,为什么不能利用其他人的工作?

+0

我使用的模板基本上是一个进一步生成器的交付机制,所以我认为将它封装成Engine/gem会使测试更容易,并且通常是“正确的”。 我会进一步调查,感谢您的帮助! – MrDavidLane

相关问题