我希望使用deface v1.0.2来修改现有的复杂rails 4.2应用程序中的一些haml模板。从this issue开始,看起来haml模板被编译为erb,然后由nokogiri处理,然后变成HTML。
我只是在寻找有关如何调试deface模板的任何建议。有没有办法捕获中间erb步骤?我遇到的特殊问题是我很难为我想要修改的rails视图编写正确的选择器(它是一个表单)。请注意,我使用.deface
DSL(文件)而不是Deface::Override
,但我很高兴听到任何格式的调试建议。
我做过的事情:
erb[loud]
实体debug
(虽然有足够的叉子,我不确定哪一个是规范的)我真的在寻找一种学习编写精确选择器的方法,而不是“猜测和检查”。我也愿意听取其他图书馆的意见,这些图书馆将是修改视图的最佳选择。
感谢您的时间。
答案 0 :(得分:0)
看起来有几个rake任务可以让你根据视图测试选择器:
deface:test_selector - 对部分或模板应用给定的CSS选择器,并为每个匹配输出标记(如果有)。 test_selector需要两个参数,第一个是部分/模板的virtual_path,第二个是要应用的CSS选择器:
rake deface:test_selector[shared/_head,title]
查看shared/_head
覆盖并选择title
元素
rake deface:test_selector['admin/products/index','div.toolbar']
查看admin/products/index
覆盖并选择div.toolbar
元素。