Ruby   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ruby-on-rails – 如何使用postgres数据库禁用heroku中的预准备语句大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_607_0@
在本地修改了我的rails项目的问题(使用PostgreS配置),同时在 database.yml中添加了这个语句:
test:
  prepared_statements: false

我修复的错误与此问题有关:

PG::ProtocolViolation: ERROR: bind message supplies 2 parameters,but prepared            statement "a24" requires 1

现在,我想用POSTGRes数据库修复我在Heroku上托管的生产应用程序.我不知道如何禁用预准备语句,因为database.yml是自动生成的.我试图追加:

/database?prepared_statements=false

到我的数据库的URI,但它最终导致错误的DATABSE_URL,所以我无法连接到我的数据库.

禁用prepared_statement的过程和正确语法是什么?

解决方法

截至2014年2月19日,heroku no longer overrides database.yml因此您可以按照 latest docs的建议关闭database.yml文件的生产和登台(或默认)块中的预准备语句:
default: &default
  adapter: POSTGResql
  encoding: unicode
  pool: 5
  prepared_statements: false

development:
  <<: *default
  database: myapp_development

test:
  <<: *default
  database: myapp_test

production:
  <<: *default
  url:  <%= ENV['DATABASE_URL'] %>
  pool: <%= ENV['DB_POOL'] || ENV['MAX_THREADS'] || 5 %>

staging:
  <<: *default
  url:  <%= ENV['DATABASE_URL'] %>
  pool: <%= ENV['DB_POOL'] || ENV['MAX_THREADS'] || 5 %>

大佬总结

以上是大佬教程为你收集整理的ruby-on-rails – 如何使用postgres数据库禁用heroku中的预准备语句全部内容,希望文章能够帮你解决ruby-on-rails – 如何使用postgres数据库禁用heroku中的预准备语句所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。