Rails 3 渲染问题
我正在编写一个脚本,允许用户通过 URL 参数传递格式。我有 JSON 和 XML 根据需要工作,但我无法让 YAML 工作。
case params[:format]
when "xml" then respond_with(@labels)
when "json" then respond_with(@labels_hash.to_json)
when "yaml" then render :text => @labels_hash.to_yaml
end
由于某种原因,当我在 URL 中传递 format=yaml
时,我的脚本会尝试强制下载文件。有什么原因会发生这种情况吗?
工作代码:
case params[:format]
when "xml" then respond_with(@labels)
when "json" then respond_with(@labels_hash.to_json)
when "yaml" then respond_with(@labels_hash) do |format|
format.yaml { render :text => @labels_hash.to_s }
end
end
I am writing a script that allows for a user to pass a format via a URL parameter. I have JSON and XML working as needed, but I can't get YAML working.
case params[:format]
when "xml" then respond_with(@labels)
when "json" then respond_with(@labels_hash.to_json)
when "yaml" then render :text => @labels_hash.to_yaml
end
For some reason when I pass the format=yaml
in my URL then my script tries to force download a file. Any reason why this would happen?
Working Code:
case params[:format]
when "xml" then respond_with(@labels)
when "json" then respond_with(@labels_hash.to_json)
when "yaml" then respond_with(@labels_hash) do |format|
format.yaml { render :text => @labels_hash.to_s }
end
end
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
尝试:
将
:yaml
添加到控制器中的respond_to :yaml
中,然后:Try:
Adding
:yaml
torespond_to :yaml
in the controller, and :