Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails rails 3-控制器使用javascript响应,即使请求格式为text/html_Ruby On Rails_Model View Controller - Fatal编程技术网

Ruby on rails rails 3-控制器使用javascript响应,即使请求格式为text/html

Ruby on rails rails 3-控制器使用javascript响应,即使请求格式为text/html,ruby-on-rails,model-view-controller,Ruby On Rails,Model View Controller,我有一个简单的场景,我想请求一个页面。请求格式为text/html。如果该请求的控制器/操作逻辑中存在错误,我希望获得错误消息。问题在于,我希望此错误消息与javascript响应类型(即无页面刷新)进行通信。如果没有错误,那么我希望通过预期的text/html响应类型加载页面 基本上,我需要两种不同的响应类型,这取决于是否存在错误。这在Rails3中可行吗?如果是,最佳做法是什么 一个快速的代码样本将不胜感激 谢谢。当然可以 我会这样做: def some_action # code

我有一个简单的场景,我想请求一个页面。请求格式为text/html。如果该请求的控制器/操作逻辑中存在错误,我希望获得错误消息。问题在于,我希望此错误消息与javascript响应类型(即无页面刷新)进行通信。如果没有错误,那么我希望通过预期的text/html响应类型加载页面

基本上,我需要两种不同的响应类型,这取决于是否存在错误。这在Rails3中可行吗?如果是,最佳做法是什么

一个快速的代码样本将不胜感激

谢谢。

当然可以

我会这样做:

def some_action
  # code
  # more code
  # implicit or explicit rendering of an html template
rescue Exception => ex
  render :json => ex.to_json, 
         :content_type => 'application/json',
         :layout => false
end