为什么我得到一个未初始化的常量错误,我该如何解决?

时间:2012-07-02 23:33:02

标签: ruby-on-rails

当我尝试运行我在Rails中构建的Web应用程序的注册表单时,出现以下错误:

未初始化的常量User :: PillHQ

引用我的应用程序代码中的两个方法,一个在我的用户模型中,另一个在我的用户控制器中。

用户模型中的相关方法是

def save_with_payment
if valid?
customer = Stripe::Customer.create(description: email, plan: PillHQ, card: stripe_card_token)
self.stripe_customer_token = customer.id
save!
end

并且用户控制器中的方法是

def create
@user = User.new(params[:user])
if @user.save_with_payment
sign_in @user
flash[:success] = "Welcome to the Sample App!"
redirect_to edit_user_path(current_user)
UserMailer.welcome_email(@user).deliver
else
render 'new'
end
end

我不确定如何删除错误,所以你能提供的任何帮助都会很棒!

1 个答案:

答案 0 :(得分:1)

下面一行中的PillHQ一词对"命名约定"无效,假设它是变量......

customer = Stripe::Customer.create(description: email, plan: PillHQ, card: stripe_card_token)
  

本地变量
  小写字母后跟其他字符,命名约定规定最好使用下划线而不是camelBack用于多个单词名称,例如里程,variable_xyz

可以找到更多信息here