【问题标题】:Ruby On Rails | What is format.html/json for?Ruby On Rails | format.html/json 是干什么用的?
【发布时间】:2017-05-18 00:35:49
【问题描述】:

所以我一直在浏览 Rails Zombies 并进入了解释 format.html 和 .json 的部分 我的问题是这些代码行做什么,为什么我们有它们?如果我在没有这些格式代码的情况下编写这些方法或操作,它们工作得非常好,因为我假设它们只是默认以 html 格式显示?如果有人能准确地弄清楚这段代码是做什么的,我将不胜感激,我也不完全理解 JSON 是什么。

def create
    @zombie = Zombie.new(zombie_params)

    respond_to do |format|
      if @zombie.save
        format.html { redirect_to @zombie, notice: 'Zombie was successfully created.' }
        format.json { render :show, status: :created, location: @zombie }
      else
        format.html { render :new }
        format.json { render json: @zombie.errors, status: :unprocessable_entity }
      end
    end

【问题讨论】:

    标签: html ruby-on-rails json


    【解决方案1】:

    简单来说:

    如果请求想要一个 HTML 页面,它将执行给 format.html 的块设置的指令。

    如果请求需要application/json(例如当您发出 Ajax 请求时),则响应将按照提供给format.json 的块中的说明给出。

    在深入研究创建任何 Web 服务之前,您应该了解 JSON 的含义。见http://www.json.org/

    【讨论】:

    • 其实Ajax请求会使用format.jsformat.json更适合API。
    • 那么我什么时候使用 JSON,为什么?
    • JSON 是当今从 Web 服务提供数据的首选方式。过去人们喜欢使用 XML。但是现在 JSON 已经接管了。在全力投入 Web 开发之前,您应该首先真正了解它。另外,请阅读 SOA、面向服务的架构。
    • 提供 json 的虚假 API 示例:jsonplaceholder.typicode.com 试试他们的端点,例如 jsonplaceholder.typicode.com/users
    • @nbkhope 非常感谢,这为我清理了很多东西!
    猜你喜欢
    • 1970-01-01
    • 2010-09-15
    • 2010-12-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多