【问题标题】:ruby on rails - git repository, database handlingruby on rails - git 存储库,数据库处理
【发布时间】:2013-08-11 20:28:01
【问题描述】:
  1. 我目前正在使用 Bitbucket,并且正在跨用户处理 Ruby on Rails 存储库。默认情况下,当一个用户推送存储库(默认命令 - git push origin master -entire rails 文件夹)时,我假设数据库也被推送到位桶,对吧?
  2. 当第二个用户从 git 下载存储库时,我不应该期望所有的 db 文件也会被下载吗?
  3. 第二个用户下载文件后是否需要再次运行 rake db migrate 命令?
  4. 在上述特定情况下,我是第二个用户,从 BitBucket 下载存储库时收到以下错误消息,而文件在上传者计算机上完美运行:

    StaticPagesController#home 中的 ActiveRecord::StatementInvalid

    找不到表“用户”

我想确保我们俩都在同一个数据库上工作,而不是在不同的数据集上并行工作。

【问题讨论】:

    标签: ruby-on-rails git rake bitbucket dbmigrate


    【解决方案1】:

    您数据库中的数据将仅驻留在数据库中。它不会在 git 存储库中。存储库包含用于动态创建数据库的数据库配置文件和迁移文件。同样,它不包含数据。

    如果你想在同一个数据库上工作,我会考虑使用Amazon AWS RDS。设置 RDS 并非不可撤销,但我无法在此处详细说明您是如何做到的。

    【讨论】:

    • 我不认为使用相同的数据库进行开发是一个好主意。
    【解决方案2】:

    我猜你是 Rails 的新手。 Rails 在开发中处理数据库的方式是:

    与数据库结构:

    1. 您通过迁移文件维护结构。

    2. 是的,如果您提取包含新迁移文件的新代码,您 需要运行 rake db:migrate。如果您不这样做,您会收到通知。

    有数据库数据:

    1. 在开发中,您可以通过种子文件维护数据进行测试。你可以在这里观看这个精彩的截屏视频:http://railscasts.com/episodes/179-seed-data

    2. 更好,你应该使用seed_fu gem https://github.com/mbleigh/seed-fu

    【讨论】:

    • 我收到以下错误:没有这样的文件或目录:~/config/database.yml 当我尝试运行 rake db:migrate 时,我看到 database.yml 文件没有上传到比特桶。在运行 db:migrate 之前我是否缺少其他命令?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-15
    • 1970-01-01
    • 2011-10-02
    相关资源
    最近更新 更多