像任何框架一样,Sails 的很大一部分是自动化重复性任务。生成器也不例外:它们是 Sails 命令行界面在为您的 Sails 项目生成新文件时所依赖的功能。事实上,您或您的团队中的某个人可能使用过生成器来创建您最新的 Sails 项目。
当您输入
sails new my-project
sails 使用其内置的 "new" 生成器来提示您选择应用程序模板,然后生成 Sails 应用程序的初始文件夹结构
my-project
├── api/
│ ├─ controllers/
│ ├─ helpers/
│ └─ models/
├── assets/
│ └─ …
├── config/
│ └─ …
├── views/
│ └─ …
├── .gitignore
…
├── package.json
└── README.md
这种传统的文件夹结构是使用框架的一大优势。但它通常也是一种折衷方案(如果您的团队或组织对不同的约定做出了明确承诺,该怎么办?)。
幸运的是,从 Sails v0.11 开始,生成器是可扩展的,并且可以轻松地签入项目仓库或发布到 NPM 以供重复使用。
Sails 的生成器允许您完全自定义在从命令行运行 sails new
和 sails generate
时发生的事情。通过增强新应用程序和新生成的模块,自定义生成器可以用来做各种很酷的事情
sails generate jquery
)sails generate component
或 sails generate ng-module
)如果您有兴趣创建自定义生成器,最好的起点是查看 自定义生成器简介。您也可以查看 社区提供的开源生成器,以防已经存在的生成器可以节省您的时间。