我有以下方法,ApplicationController
以便我可以根据用户的权限加载独特的视图。当我在控制器中调用它时它工作正常,但是当我指定一个部分时,我得到了部分的源而不是渲染它。
class ApplicationController < ActionController::Base
include ControllerAuthentication
private
def render(*args)
options = args.extract_options!
render_options = _normalize_render(*args)
location = logged_in? && current_user.is_admin? ? "admin" : "client"
options[:template] = "/#{location}/#{params[:controller]}/#{render_options[:action] || params[:action]}"
if options[:partial]
options[:partial] = "#{location}/#{params[:controller]}/#{options[:partial]}"
end
super(*(args << options))
end
helper_method :render
end
<%= render partial: "form" %>
在页面上输出类似的内容。
["<form ...>...</form>"]
我一直在阅读render 方法的源代码,但我还没有查明是什么原因造成的。我需要更改什么才能正确渲染部分。