rackup 葡萄与环境
rackup grape with environment
我有一个葡萄 api,我直接使用 rackup 安装,我想在生产或开发中部署我的 api 时使用环境选项指定不同的 url
我的config.ru
#\-p 4000 -s puma
require 'grape'
#require all module
modules = Dir.glob('**/api/*/*/module/*.rb')
modules.each do |m|
require './'+m
end
#require all table
bases = Dir.glob('**/api/*/*/*.rb')
bases.each do |b|
require './'+b
end
#require all api versions
apis = Dir.glob('**/api/*.rb')
apis.each do |a|
require './'+a
end
run DataRetriever::API
我从 rails 的结构中获得灵感,并使用 SettingsLogic 来管理环境设置。
在你的 rackup 文件开头添加:
ENV['RACK_ENV'] ||= 'development'
如果你只想在某些环境中执行某些代码
require_relative "config/environments/#{ENV['RACK_ENV']}"
如果您想为每个环境使用不同的设置
require 'settingslogic'
class Settings < Settingslogic
source File.join(File.dirname(__FILE__), 'config', 'settings.yml')
namespace ENV['RACK_ENV']
end
我有一个葡萄 api,我直接使用 rackup 安装,我想在生产或开发中部署我的 api 时使用环境选项指定不同的 url
我的config.ru
#\-p 4000 -s puma
require 'grape'
#require all module
modules = Dir.glob('**/api/*/*/module/*.rb')
modules.each do |m|
require './'+m
end
#require all table
bases = Dir.glob('**/api/*/*/*.rb')
bases.each do |b|
require './'+b
end
#require all api versions
apis = Dir.glob('**/api/*.rb')
apis.each do |a|
require './'+a
end
run DataRetriever::API
我从 rails 的结构中获得灵感,并使用 SettingsLogic 来管理环境设置。 在你的 rackup 文件开头添加:
ENV['RACK_ENV'] ||= 'development'
如果你只想在某些环境中执行某些代码
require_relative "config/environments/#{ENV['RACK_ENV']}"
如果您想为每个环境使用不同的设置
require 'settingslogic'
class Settings < Settingslogic
source File.join(File.dirname(__FILE__), 'config', 'settings.yml')
namespace ENV['RACK_ENV']
end