ruby-on-rails - 未初始化的常量 - RoR
问题描述
文件夹结构如下。
books_controller.rb 定义如下。
module Api
module V1
class BooksController < ApplicationController
书籍控制器内部的结帐方法定义如下。
def checkout
begin
@stripe = StripeService.new
@stripe.invoke_payment
rescue Stripe::CardError => e
json_response(e.message, :unprocessable_entity)
end
end
但它返回以下错误
NameError(未初始化的常量 Api::V1::BooksController::StripeServie):
条带服务.rb
class StripeService
def invoke_payment
customer = fetch_customer
save_user_card_info(customer)
initiate_payment(customer.id)
end
关于如何解决这个问题的任何想法?
解决方案
这可能是一个错字:StripeService
不是StripeServie
。
或者检查类的文件名,StripeServie
看看它是stripe_servie.rb
. Rails 自动加载app
目录下的所有类。
推荐阅读
- reactjs - Prime React 数据表组件从数组到 JSON 的数据转换?
- authentication - 无法在 Keycloak 中将 Google 帐户链接到 Facebook 帐户,反之亦然
- django - 保存到数据库后如何获取对象
- wordpress - 按尺寸过滤未显示 WooCommerce 中过滤器下的所有产品
- linux - 有选择地为特定参数记录内核 Ftrace 点
- java - 为什么 Java 将某些 IPv6 地址解释为 IPv4?
- react-native - 如何在 React Native 中使用 apisauce 下载 pdf 文件?
- javascript - Shopify API - 使用选择字段使用 javascript 更新所选变体
- python - 为什么在尝试获取 txt 文件的文件路径时出现“权限被拒绝”?
- flutter - 平台不允许不安全的 HTTP