gpt4 book ai didi

ruby-on-rails - rails : how to extend a generator?

转载 作者:行者123 更新时间:2023-12-03 20:45:38 26 4
gpt4 key购买 nike

我正在尝试在 Rails 中扩展模型生成器( rails g model )。基本上我的生成器应该和模型一做同样的事情,但是复制 2 个额外的文件。就那么简单。

我查看了 Railscast #218 (http://railscasts.com/episodes/218-making-generators-in-rails-3),它提供了非常丰富的信息,但我找不到任何关于扩展生成器的信息。

查看 rails 的源代码,模型生成器似乎位于 lib/rails/generators/rails/model/model_generator.rb 中,定义为 Rails::Generators::ModelGenerator。

我试图让我的生成器扩展这个类,但它导致:

Error: uninitialized constant Rails::Generators::ModelGenerator.

我要求这个文件的尝试没有成功。

所以我决定在这里停下来问问。扩展发电机的正确方法是什么?

最佳答案

看看钩子(Hook)和调用。

class MyGenerator < Rails::Generators::Base
def create_my_file
# Do your generators stuff
create_file "config/initializers/my.rb", "# Add content here"
# Create model
invoke("model", ["model_name", "arg1", "arg2"])
end
end

希望这有帮助。

关于ruby-on-rails - rails : how to extend a generator?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14206456/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com