是否可以使用 ruby​​ 以 XML 或 JSON 格式呈现视图

Posted

技术标签:

【中文标题】是否可以使用 ruby​​ 以 XML 或 JSON 格式呈现视图【英文标题】:Is it possible to render a view in XML or JSON using ruby 【发布时间】:2011-03-16 17:46:22 【问题描述】:

在 rails 3 中渲染 JSON 或 XML 视图非常简单。由于 Hobo 不使用视图,我无法弄清楚如何在 hobo 项目中做同样的事情,而且文档也不是很有启发性。有人做过吗?

我正在使用 rails 3.0.3 和 hobo 1.3.0 pre29

【问题讨论】:

【参考方案1】:

正确的解决方案是:

def show
    hobo_show do |expects|
      expects.json  render :json => @user.to_json 
      expects.html  hobo_show 
    end
end

对于索引:

def index
    hobo_index do |expects|
      expects.json  render :json => @users.to_json 
      expects.html  hobo_index 
    end
end

【讨论】:

【参考方案2】:

我还没有在 Rails3/Hobo1.3 项目中完成它,但我肯定在 Hobo 项目中呈现了非 DRYML 视图。它应该与 Rails 中的工作方式完全相同。

但是,对于 JSON 或 XML,我通常只在控制器中执行:

def show
 respond_to do |expects|
   expects.json  render :json => ... 
   expects.html  hobo_show 
 end
end

【讨论】:

P.S. Hobo 用户邮件列表是回答 Hobo 问题的最佳场所。

以上是关于是否可以使用 ruby​​ 以 XML 或 JSON 格式呈现视图的主要内容,如果未能解决你的问题,请参考以下文章

XML和JSO的面试题(修订版)

在 Ruby 中从 XML DTD 生成对象模型

是否有任何软件或库可用于在 C、C++、Java 或 Ruby 中绘制 3 维螺丝?

如何设置 webrick 服务器以使用 ruby​​ 1.9.3?

Ruby 类方法或常量,最佳实践

是否可以“重新推送”在 ruby​​gems.org 上以相同版本发布的 yanked 版本 gem?