需要明确的是,这不是我想要的:
- 让我的自定义生成器调用默认的 Rails 生成器
- 用我自己的替换默认的 Rails 生成器
我想要做的是在我调用时自动调用我的生成器:
rails generate scaffold User name age:integer
我不是在写测试替换或任何东西,它完全是自定义的。我找到的关于发电机的所有信息都涉及前两种情况之一,但不是我想做的。一旦我发现hook_for
我立即认为这正是我所需要的,但它似乎恰恰相反——从我的自定义生成器内部调用另一个 Rails 生成器(如果我想为我的自定义生成器创建一个测试文件,我会调用hook_for :test_framework
然后在TestUnit::MyCustomGenerator
某处定义一个类)。
我想我可以修补默认的脚手架生成器来调用我的,但这感觉很脏。我研究了一些类似https://github.com/Skalar/i18n-yaml-generator的 gem,但试图将其转换为使用初始化程序并且lib/generators
不适合我。scaffold_generator 运行,但我的从未被调用。