<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>zorrodjn (江南)</title>
    <link>https://ruby-china.org/zorrodjn</link>
    <description></description>
    <language>en-us</language>
    <item>
      <title>Rails 异常处理</title>
      <description>&lt;p&gt;照着《应用 Rails 进行敏捷开发》做一个购物车系统，处理异常的 action 不能如期工作。&lt;/p&gt;

&lt;p&gt;app/controllers/carts_controller.rb路径下修改show方法如下：&lt;/p&gt;

&lt;p&gt;# GET /carts/1
  # GET /carts/1.json
  def show
    begin
      &lt;a href="/cart" class="user-mention" title="@cart"&gt;&lt;i&gt;@&lt;/i&gt;cart&lt;/a&gt; = Cart.find(params[:id])
    rescue ActiveRecord::RecordNotFound
      logger.error "Attempted to access invalid cart #{params[:id]}"
      redirect_to store_url, :notice =&amp;gt; 'Invalid cart'
    else
      respond_to do |format|
        format.html # show.html.erb
        format.xml { render :xml =&amp;gt; &lt;a href="/cart" class="user-mention" title="@cart"&gt;&lt;i&gt;@&lt;/i&gt;cart&lt;/a&gt;}
      end
    end
  end&lt;/p&gt;

&lt;p&gt;之后在浏览器输入：&lt;a href="http://localhost:3000/carts/asdfasdfadt" rel="nofollow" target="_blank"&gt;http://localhost:3000/carts/asdfasdfadt&lt;/a&gt;提示错误
ActiveRecord::RecordNotFound in CartsController#show
Couldn't find Cart with id=asdfasdfad&lt;/p&gt;

&lt;p&gt;恳请大神指教，先谢过了！&lt;/p&gt;</description>
      <author>zorrodjn</author>
      <pubDate>Wed, 19 Mar 2014 20:05:57 +0800</pubDate>
      <link>https://ruby-china.org/topics/18018</link>
      <guid>https://ruby-china.org/topics/18018</guid>
    </item>
  </channel>
</rss>
