繁体   English   中英

Ruby on Rails:开发与生产数据库-在哪里输入数据?

[英]Ruby on Rails : Development vs Production database - where to enter data?

我是Rails的新手。

我对开发和生产数据库感到困惑。 我正在所有环境中使用postgreSQL,并在heroku中托管该网站。 我能够将迁移和种子推送到heroku上的生产数据库中。 但是,我通过localhost:3000上的浏览器输入了很多新数据。 我花了很长时间试图弄清楚如何将这些数据发送到heroku,但最终成功了,方法是销毁然后创建一个新的空数据库并将开发数据库推入该数据库。 现在我在heroku上的站点与使用Rails服务器的localhost:3000相同。 我修改了database.yaml文件,以便开发和生产数据库现在具有相同的名称(开发数据库的名称)。 但是我不认为这意味着如果我通过localhost:3000对开发数据库进行更改,它们将在heroku站点上自动更改。 我对heroku上的颜色(CRIMSON,MAROON)非常困惑-这些数据库与我在yaml中指定的数据库不同吗? 而且我不知道我现在是否应该在localhost:3000站点或heroku站点上输入新数据。 抱歉,这是非常业余的。 谢谢。

您对Rails如何使用数据库感到困惑

让我解释:


Rails使用MVC(模型视图控制器)编程模式来用数据库数据填充应用程序。 Rails使用此模式是因为它是最有效和可扩展的,并且可以通过接受用户的命令来工作(单击链接,输入数据),发送给控制器并在模型上执行请求

所有Rails应用程序的工作方式是接受命令(您定义的),并使用它们执行数据库操作,然后用新数据重新填充应用程序

Rails旨在与单个数据库一起使用,并且在那里使用database.yml文件指定哪个数据库(对于性能,效率和其他问题,具有用于开发,登台和生产的不同数据库是一个好习惯)

这意味着该数据库的名称并不重要-重要的使用,以保持这两个数据库最新rake db:migrate系统给所有数据库所需的列,使您的应用程序正常工作


为了回答您的问题,开发和生产中使用的数据将有所不同。 您的生产环境就是“圣洁”,所有内容都可以有效地编译和运行

生产环境旨在处理自己的数据,并且应通过您的应用程序进行填充。 开发和生产数据库的原因是要确保在尝试将其应用到生产数据库之前,可以在开发环境中“弄错”。

如果您告诉我们更多有关您的特定问题的信息,我们将给出更详尽的答案

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM