代码之家  ›  专栏  ›  技术社区  ›  Adrian Serafin

如何从代码中调用生成器?

  •  10
  • Adrian Serafin  · 技术社区  · 15 年前

    我写了我自己的发电机,从控制台像这样启动

    rails generate ead_document TechnicalOpinion --document_type_id=1
    

    它创建模型和迁移。我想在不使用ruby系统命令的情况下从控制器执行生成器。有办法吗?

    1 回复  |  直到 15 年前
        1
  •  18
  •   Brad Werth    12 年前

    解决方案似乎非常简单:

    控制器中的此代码

    Rails::Generators.invoke("ead_document", [@document_type.table_name.classify, "--document_type_id=#{@document_type.id}"])
    

    rails generate ead_document TechnicalOpinion --document_type_id=1