我目前正在使用ROR App。问题是应用程序创建时没有考虑太多自定义。
注意:这是ROR APP ,不是引擎
我想:
我尝试将应用转换为引擎,安装它然后创建视图。哪个会覆盖应用程序中的那些。
虽然这不起作用,并且需要花费大量时间才能使它成为引擎'准备。
答案 0 :(得分:1)
事实上,最好的方法是使用app作为引擎。它有多难,取决于当前的应用程序。但我个人不能直接看到修改视图源代码之间的差异,或者复制整个视图代码并在其他地方修改它。一般而言,观点并非继承"彼此之间,因此您必须复制粘贴并编辑与应用源代码中相同的代码。
顺便说一句,如果你想轻松地使它成为引擎就绪,你可以尝试只提取视图文件夹(如果需要的话,帮助者,资产)并将其放入引擎并留下所有东西(控制器,模块) ,主要应用程序中的路线等)。然后,在主应用程序中,您可以创建具有相应路径的视图,从引擎复制其内容并仅修改它们。
但是出于这样或类似的目的,在Deface中使用了一个gem Spree,以便扩展可以轻松地进行交互。关键是这个gem,原始视图没有被修改,你创建deface
覆盖文件,使用Nokogiri(css,xpath)语法,在运行时更改实际视图内容。
答案 1 :(得分:0)
在控制器中,您可以使用命令render "name_of_custom_view"
覆盖操作的默认视图。 (http://guides.rubyonrails.org/layouts_and_rendering.html#using-render)
开箱即用的.erb模板语言是不是支持?尝试命名自定义视图* .html.erb而不是* .html.slim。