Ruby on rails 找到在带有@jobs的respond_上加载的文件
关于我的项目,我有Ruby on rails 找到在带有@jobs的respond_上加载的文件,ruby-on-rails,ruby,Ruby On Rails,Ruby,关于我的项目,我有 respond_to :json load_and_authorize_resource def show respond_with @job_pattern end 根据这里的教程 它的工作原理是这样的:当一个请求到来时,例如使用xml格式,它将首先在users/index.xml中搜索一个模板 所以我检查了job_patterns/index.json,但没有找到任何具有此名称的文件 有谁能告诉我在哪里可以找到文件,或者如果文件不在这里,输出是如何生成的。在您的情
respond_to :json
load_and_authorize_resource
def show
respond_with @job_pattern
end
根据这里的教程
它的工作原理是这样的:当一个请求到来时,例如使用xml格式,它将首先在users/index.xml中搜索一个模板
所以我检查了job_patterns/index.json,但没有找到任何具有此名称的文件
有谁能告诉我在哪里可以找到文件,或者如果文件不在这里,输出是如何生成的。在您的情况下,您的操作是
show
,因此与之关联的模板是view/[namespace]/show.json
中的show.json
您应该创建此模板,或者如果找不到此模板,Rails将自动调用传递给respond\u with
的对象
请参阅。,因为
respond\u to:json
不呈现视图,而是调用render json:@job\u pattern
render json:@job\u pattern
调用@job\u pattern.to\u json
并将json字符串设置为响应主体。对于XML或YML也可以这样做
这是rails约定优于配置理念的一个例子——如果有show.json.[erb | haml]
它会优先考虑。否则,rails将查找与控制器名称对应的实例变量(@job
或@jobs
表示索引),并尝试将其序列化为JSON
进一步阅读: