0

这让我疯了一整天。我的 ccpayment 控制器中有以下内容:

#"ccpayments.rb"

  def checkout
    raise ActionController::RoutingError.new('No invoice found with that invoice code')
  end

raise 错误位仅用于测试......我删除了内容以确保我没有搞砸那里的东西。

然后在我的路线中

  scope "/:locale" do
    resources :jurisdictions, :except => ['show']
    resources :ccpayments do
      collection do
        get "checkout"
      end
    end
  end

耙式路线显示

checkout_ccpayments GET  /:locale/ccpayments/checkout(.:format) ccpayments#checkout

但是,当在 ...:3000/en/ccpayments/checkout 上运行它时,我得到

未知操作 找不到 CcpaymentsController 的操作“结帐”

如果我添加一个视图,它将显示该视图,但永远不会调用该操作。我确信我缺少一些基本的东西,因为我是一个 Rails 新手,但是什么?任何帮助表示赞赏!

4

1 回答 1

3

您说您的控制器文件已命名ccpayments.rb,但控制器的标准命名系统将使其命名ccpayments_controller.rb,因此会导致未找到操作错误。尝试重命名控制器文件,看看是否能解决问题。

于 2013-09-25T16:13:44.197 回答