0
# GET system_accounts/:id
  def show 
    # If a system account already exists in session, it was found from a search with the account id
    # Otherwise, this is a new search for a system account by the given id
    if params[:id]
      Rails.logger.debug { "Querying for the account with id: #{params[:id]}" }
      response = query_account(CGI.escape(params[:id]))
    if response.is_a?(Net::HTTPSuccess)
        @account = JSON.parse(response.body)
    unless @account.empty?
      redirect_to system_accounts_path(params[:id])        
    end 
    end

以上是我的表演动作。所以问题是,如果我用我的 id=2 搜索,我应该得到的结果链接是 system_accounts/2 但我得到的是 system_accounts.2 。为什么 。代替 / 。我错过了什么?

4

1 回答 1

1

如果您严格遵循 rails 约定,则应使用system_account_path(params[:id])(不带s)。2 被解释为格式,因此它附加.2到 url,因为system_accounts_path很可能指向 system_accounts 控制器的索引操作。删除 s 以指向 show 动作。

于 2013-02-19T23:50:14.080 回答