Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 将sinatra环境变量设置为符号_Ruby_Activerecord_Sinatra - Fatal编程技术网

Ruby 将sinatra环境变量设置为符号

Ruby 将sinatra环境变量设置为符号,ruby,activerecord,sinatra,Ruby,Activerecord,Sinatra,我试图设置Sinatra环境变量,以便它们传递符号,而不仅仅是字符串。现在我收到以下错误消息:DEPRECATION警告:向ActiveRecord::Base传递字符串。不推荐为配置查找建立连接,请传递符号(:development)。 我的.env文件:(使用dotenv gem) RACK_ENV=development 我的environments.rb文件(我在app.rb文件中需要此文件) 我已尝试将.env设置为: RACK_ENV=:开发 但这给我带来了一个错误没有将nil隐式转

我试图设置Sinatra环境变量,以便它们传递符号,而不仅仅是字符串。现在我收到以下错误消息:
DEPRECATION警告:向ActiveRecord::Base传递字符串。不推荐为配置查找建立连接,请传递符号(:development)。

我的
.env
文件:(使用dotenv gem)

RACK_ENV=development

我的
environments.rb
文件(我在app.rb文件中需要此文件)

我已尝试将.env设置为:

RACK_ENV=:开发


但这给我带来了一个错误
没有将nil隐式转换为字符串

,因为默认情况下Sinatra活动记录读取database.yml文件,这意味着我不需要显式读取该文件。相反,我只写了以下内容:

环境署署长

RACK_ENV=development

环境.rb

environment = ENV['RACK_ENV'].to_sym
ActiveRecord::Base.establish_connection(environment)

尝试
ActiveRecord::Base。建立连接(:development)
可能吗?但是我想从
数据库中读取哈希/变量。yml
我想它读取的默认位置是从
config/database.yml
(我不确定…)和Sinatra AR,是的,你说得对。
environment = ENV['RACK_ENV'].to_sym
ActiveRecord::Base.establish_connection(environment)