Rails 中在哪里存储或实现全局变量 ($)?
Where store or implement global variables ($) in Rails?
我想use/implement Rails 中的全局变量。我尝试了以下方法:
在config/environments/production.rb:
$n_exams_question = 20
在config/environments/development.rb:
$n_exams_question = 3
我想在生产和开发中使用不同的值。我的本地服务器没有检测到全局变量。实施它的最佳位置在哪里?
我不知道这是否回答了您的问题,或者这是否是一个好的做法,但我会使用环境变量。
为此,我使用 gem Figaro
示例:
在您的application.yml文件中
development:
N_EXAMS_QUESTION: "15" # ENV['N_EXAMS_QUESTION']
production:
N_EXAMS_QUESTION: "20" # ENV['N_EXAMS_QUESTION']
您可以使用 ENV['N_EXAMS_QUESTION'] 调用此值
Rails 这样做:
https://guides.rubyonrails.org/configuring.html#custom-configuration
在config/environments/production.rb
中:
config.myGlobalVariable = 'blabla1'
在config/environments/development.rb
中:
config.myGlobalVariable = 'blabla2'
然后在任何地方使用这个:
Rails.configuration.myGlobalVariable
我想use/implement Rails 中的全局变量。我尝试了以下方法:
在config/environments/production.rb:
$n_exams_question = 20
在config/environments/development.rb:
$n_exams_question = 3
我想在生产和开发中使用不同的值。我的本地服务器没有检测到全局变量。实施它的最佳位置在哪里?
我不知道这是否回答了您的问题,或者这是否是一个好的做法,但我会使用环境变量。
为此,我使用 gem Figaro
示例:
在您的application.yml文件中
development:
N_EXAMS_QUESTION: "15" # ENV['N_EXAMS_QUESTION']
production:
N_EXAMS_QUESTION: "20" # ENV['N_EXAMS_QUESTION']
您可以使用 ENV['N_EXAMS_QUESTION'] 调用此值
Rails 这样做: https://guides.rubyonrails.org/configuring.html#custom-configuration
在config/environments/production.rb
中:
config.myGlobalVariable = 'blabla1'
在config/environments/development.rb
中:
config.myGlobalVariable = 'blabla2'
然后在任何地方使用这个:
Rails.configuration.myGlobalVariable