草庐IT

database_inventory

全部标签

ruby-on-rails - 在config/database.yml文件中存储生产环境的DB密码是否可以

在“config/database.yml”文件中存储生产环境的DB密码是否可以?还是有更正确的方法(也许是环境变量)?提前致谢。 最佳答案 这不是个好主意!一个主要原因是config/database.yml文件可能会包含在某种源代码控制中,例如git存储库。即使该repo目前是私有(private)的,您也无法确定它将来是否会公开,然后您就会遇到问题!此外,如果任何人获得了对您的应用程序文件的读取权限或只是您应用程序源代码的副本,他们现在就拥有了您的数据库密码。一个典型的解决方案是像您建议的那样设置一个环境变量,然后在.yml文

ruby - Sinatra 与 Postgres 和 ActiveRecord |推送到 Heroku 时出错是 : Invalid DATABASE_URL

我有一个用Sinatra编写的应用程序,可以在本地运行,但我似乎无法将其推送到heroku。当我尝试推送到heroku时,出现以下错误:----->Writingconfig/database.ymltoreadfromDATABASE_URLCouldnotdetectraketasksensureyoucanrun$bundleexecrake-PagainstyourappwithnoenvironmentvariablespresentandusingtheproductiongroupofyourGemfile.Thismaybeintentional,ifyouexpect

ruby-on-rails - 无法加载 `Rails.application.database_configuration` : (NoMethodError) with launching to Heroku

我是一名中级Rails开发人员,我使用远程数据库作为生产环境中的唯一连接。我的堆栈是Rails5和Ruby2.4.0。我已经为数据库设置了环境变量,例如USERNAME和PASSWORD。当我部署到Heroku时,我收到此错误消息:Cannotload`Rails.application.database_configuration`:(NoMethodError)undefinedmethod`[]'fornil:NilClass我假设这是因为Rails看不到环境变量,但即使我对数据库的用户名和密码进行硬编码以进行测试,也会发生相同的错误。这是我的database.ymldefaul

ruby-on-rails - 对同一组数据进行多次计算 : ruby or database?

我有一个模型Transaction,我需要为transactions的子集显示许多字段的许多计算结果。我见过2种方法,但我不确定哪种方法最好。当数据集增长和并发用户数量增加时,我追求的是对性能影响最小的那个。data[:total_before]=Transaction.where(xxx).sum(:amount_before)data[:total_after]=Transaction.where(xxx).sum(:amount_after)...或transactions=Transaction.where(xxx)data[:total_before]=transaction

ruby-on-rails - 设计用户的 rails pg db 迁移未定义方法 `database_authenticatable'

undefinedmethoddatabase_authenticatable'for#迁移是:classDeviseCreateUsersfalset.recoverablet.rememberablet.trackablet.timestampsendadd_index:users,:email,:unique=>trueadd_index:users,:reset_password_token,:unique=>trueenddefself.downdrop_table:usersendend 最佳答案 如果我没记错的话,设计

ruby-on-rails - ruby rails : Saving multiple values in a single database cell

如何在RubyonRails应用程序的单个单元格记录中保存多个值?如果我有一个名为Exp的表,其中列名为:Education、Experience和Skill,什么如果我希望用户在一行中存储多个值(例如教育机构或技能),这是最佳做法吗?我想让用户使用多个文本字段,但应该进入同一个单元格记录。例如,如果用户有多种技能,这些技能应该在一个单元格中吗?如果我只为技能​​创建一个新表,这会更好吗?请指教,谢谢 最佳答案 我不建议在同一个数据库列中存储多个值。这将使查询变得非常困难。例如,如果您想要查找具有特定技能集的所有用户,则查询在可读性

ruby - rake 数据库 :migrate is throwing BusyException: database is locked exception

我正在学习MichaelHartl的RubyonRails教程,在第6章中我被指示创建一个新的迁移以将索引添加到用户表中的电子邮件列。这是我的迁移:defself.upadd_index:users,:email,:unique=>trueenddefself.downremove_index:users,:emailend当我运行rakedb:migrate时,它​​会思考一秒钟,然后抛出一个BusyException并说数据库已锁定。数据库是一个sqlite3数据库,存储在我本地机器上我的用户文件夹中;没什么特别的。非常感谢任何帮助。 最佳答案

ruby - SQLite3::Database 和 SQLite3::Statement 的初始化方法在哪里

我是一位经验丰富的程序员,正在学习Ruby(并且非常喜欢它)。我正在使用SQLite3设置数据库。为了更好地学习Ruby,我正在跟踪SQLite3。我不明白的是,数据库和语句类的#new代码在哪里。实际上,我期望的不是#new方法,而是#initialize方法。SQLite3::Database.new(file,options={})SQLite3::Statement.new(db,sql)以上两句来自文档。但是在我的代码中,当我试图追踪到这个时$db=SQLite3::Database.new"MyDBfile"它刚刚跨过。然后稍后当我尝试追踪#$db.execute我确实进入

ruby-on-rails - 由于未初始化的 'tr' 方法,database.yml 安装失败

我试图将ERB传递给database.yml对我的其他项目来说是非常正常的操作,这个项目似乎不想接受数据库配置作为ERB,只希望它们保持原样我尝试设置dotenv甚至figarogems,但都产生相同的错误错误(第1行).rvm/gems/ruby-2.2.1/gems/activerecord-4.2.0/lib/active_record/connection_adapters/connection_specification.rb:37:in`initialize':undefinedmethod`tr'fornil:NilClass(NoMethodError)错误(续)con

ruby - Heroku 上没有这样的文件 'config/database.yml'

我的应用是一个RubyRack应用。当我的Heroku应用程序启动时它中断了,因为/app/config.ru:8:in`read':Nosuchfileordirectory-config/database.yml(Errno::ENOENT)为什么会这样?我知道Heroku是为了创建这个文件https://devcenter.heroku.com/articles/cedar-migrationThedatabasecredentialswillstillbeconfiguredautomatically:atslugcompiletime,aconfig/database.yml