当我的ec2机器上启动puma时,我收到此错误:错误的URI(不是URI?):<%= ENV ['DATABASE_URL']%>(URI :: InvalidURIError)因为database.yml我不知道为什么当我用真实网址替换网址的嵌入式ruby代码时,应用程序运行正常。
我的database.yml:
default: &default
adapter: postgresql
encoding: unicode
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
port: 5432
development:
<<: *default
database: <%= ENV['DATABASE_NAME'] %>
username: <%= ENV['DATABASE_USERNAME'] %>
password: <%= ENV['DATABASE_PASSWORD'] %>
production:
<<: *default
url: <%= ENV['DATABASE_URL'] %>
我使用dotenv gem并从我的项目目录中加载另一个文件中的环境变量。另外,知道当我在ec2机器上打开rails控制台时,我可以毫无问题地连接到数据库。
任何人都可以帮我解决这个问题吗?
我在another stackoverflow question找到了答案。 Tproblem是database.yml不接受erb。所以,我试着像上一个问题的答案那样做,并且工作正常