Rails 3.2
我想在Rails项目中使用一些常量。它们是字符串常量。我把它们放在lib / code_constants.rb
中confirm_payment = 'Confirm Payment'
在我看来(使用SLIM),我将以下内容作为第一行:
- include CodeContants
= form_for(@payments, url: payment_path) do |f|
.....
.actions = f.submit confirm_payment
我收到以下错误消息:
预期/app/lib/code_constants.rb来定义CodeConstants
我对SLIM有些新意,但我认为通过在此处包含文件,我可以在视图中使用常量
答案 0 :(得分:1)
我猜您在application.rb
中并不需要此文件。
在application.rb
中输入此代码。
config.autoload_paths << "#{Rails.root}/lib"
然后,在code_constants.rb
中,您可以写为:
module CodeConstants
confirm_payment = 'Confirm Payment'
end
在您查看文件中,您可以使用常量跟随:
= form_for(@payments, url: payment_path) do |f|
.....
.actions = f.submit CodeConstants::confirm_payment
答案 1 :(得分:0)
Rails'国际化比定义常量更适合这种用例。查看http://guides.rubyonrails.org/i18n.html上的指南。