respond_with - 如何回复文本

时间:2012-10-09 17:15:55

标签: ruby-on-rails

我在rails应用程序中使用respond_to和respond_with,但在一个用例中,我只需要回复一种资源格式的文本(:json)......但我可以&#39 ;找到如何做到这一点...

我想要这样的东西(我知道这不起作用)

def create
    ...
    respond_with(:json, render :text => "Successfully Done!")
end

任何想法?

谢谢!

2 个答案:

答案 0 :(得分:9)

看起来这可能就是你要找的东西:

def create
  respond_to do |format|
    format.html
    format.json { render :text => "Successfully Done!" }
  end
end

答案 1 :(得分:8)

安德烈,

解决方案是:

class TextController < ApplicationController
  respond_to :json, :text

  def index
    respond_with do |format|
      format.json {
        render :text => "I'm a text provided by json format"
      }
      format.text {
        render :text => "I'm a text"
      }
    end
  end
end

在你的路线上.rb:

match '/text' => 'text#index', defaults: { format: 'text' }