通常rails会自动渲染与控制器和动作相对应的文件。例如,index
中的操作TestController
可以呈现文件app/views/test/index.html.erb
。 是否有动态方式可以获取相应操作视图文件的路径?例如,如果我有test#something
我想获得app/views/test/something.html.erb
。
答案 0 :(得分:5)
有可能。查看LookupContext和view_renderer
。
在控制者的行动中:
lookup_context.find_template("#{controller_path}/#{action_name}").identifier
在视图中:
@view_renderer.lookup_context.find_template(@virtual_path).identifier