Rails 3 рендерит проблемы - PullRequest
0 голосов
/ 20 декабря 2010

Я пишу скрипт, который позволяет пользователю передавать формат через параметр 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

По какой-то причине, когда я передаю format=yaml в своем URL, мой скрипт пытается принудительно загрузить файл. Любая причина, почему это произойдет?

Рабочий код:

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

1 Ответ

1 голос
/ 20 декабря 2010

Попробуйте:

Добавление :yaml к respond_to :yaml в контроллере и:

respond_to do |format|
  ....other formats....
  format.yaml { render :yaml => @labels_hash }
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...