0

我想生成一个复杂的脚手架,然后删除 gem 有没有办法冻结 rails_admin 或 activescaffold 生成的代码,以便我自己编辑它?(类似于 rails 脚手架的做法)是否有另一个 gem 可以生成更复杂的脚手架?

4

2 回答 2

0

在活动脚手架中更改脚手架的视图,您可以使用overrides

于 2011-03-11T19:45:18.780 回答
0

这取决于您运行的 Rails 版本。如果 >2.1,您可以在 environment.rb 中使用明确指定 gem config.gem,然后运行rake gems:unpack将这些 gem 冻结到 vendor/gems 文件夹中。对于 >=3.0,使用 Builder 工具来冻结 gem。

如果 <= 2.1,那么您可以手动执行上述步骤 - 将所有 ActiveScaffold gem 代码复制到 vendor/plugins 的文件夹中,然后删除 gem 本身。请参阅早期基于插件的 ActiveScaffold 版本以获取指导。

您也可以仅根据需要执行此操作。要自定义视图,请创建一个 app/views/active_scaffold_overrides 文件夹,然后复制任何 ActiveScaffold 部分以在其中进行自定义。它们将自动在您的应用程序中使用——无需将它们复制到每个视图中。要自定义控制器操作,请创建一个名为 ActiveScaffold 的控制器,然后让所有其他脚手架控制器继承自这个新的ActiveScaffoldController. 现在您可以在某个地方覆盖操作本身,并且您也可以在生成的ActiveScaffoldHelper文件中覆盖帮助程序。

于 2011-10-17T13:42:52.903 回答