首页 文章

Rails Heroku部署

提问于
浏览
2

我使用Heroku部署并且文件传输正常,但应用程序无法正常工作 . 我认为它与 生产环境 数据库有关,但我似乎无法弄清楚如何解决它 . 我的应用程序在我的机器上开发正常 . 我在heroku上运行了一些rake db命令,比如

$ heroku rake db:reset --trace

我得到了

耙子流产了!没有这样的文件加载 - faker /app/lib/tasks/sample_data.rake:1:in require' /app/lib/tasks/sample_data.rake:1 /app/.bundle/gems/ruby/1.8/gems/railties-3.0.1/lib/rails/engine.rb:131:in load'/app/.bundle/gems/ruby/1.8/gems/railties-3.0.1/lib/rails/engine .rb:131:在 load_tasks' /app/.bundle/gems/ruby/1.8/gems/railties-3.0.1/lib/rails/engine.rb:131:in 每个'/app/.bundle/gems/ruby/1.8/gems/railties-3.0.1/lib/rails/engine.rb:131:in load_tasks' /app/.bundle/gems/ruby/1.8/gems/railties-3.0.1/lib/rails/application.rb:141:in load_tasks'/app/.bundle/gems /ruby/1.8/gems/railties-3.0.1/lib/rails/application.rb:77:in send' /app/.bundle/gems/ruby/1.8/gems/railties-3.0.1/lib/rails/application.rb:77:in method_missing'/ app / Rakefile:7 /app/.bundle/gems/ruby/1.8/gems/rake-0.8 .7 / lib / rake.rb:2383:in load' /app/.bundle/gems/ruby/1.8/gems/rake-0.8.7/lib/rake.rb:2383:in raw_load_rakefile'/app/.bundle/gems/ruby/1.8/gems/rake-0.8.7/lib/rake.rb:2017:in load_rakefile' /app/.bundle/gems/ruby/1.8/gems/rake-0.8.7/lib/rake.rb:2068:in standard_exception_handling'/ app / .bundle / gems / ruby / 1.8 / gems / rake-0.8.7 / lib / rake.rb:2016:in load_rakefile' /app/.bundle/gems/ruby/1.8/gems/rake-0.8.7/lib/rake.rb:2000:in run'/app/.bundle/gems/ruby/1.8/gems/rake-0.8.7/lib /rake.rb:2068:in standard_exception_handling' /app/.bundle/gems/ruby/1.8/gems/rake-0.8.7/lib/rake.rb:1998:in run ' /app/.bundle/gems/ruby/1.8/gems/rake-0.8.7/bin/rake:31 /usr/ruby1.8.7/bin/rake:19:in `load' /usr/ruby1.8.7/bin/rake:19(在/ app中)

然后,我跑了$ RAILS_ENV = 生产环境 rake db:migrate --trace

得到了

**调用db:migrate(first_time)**调用环境(first_time)执行环境执行db:migrate == CreateUsers:migrating =================== ================================= - create_table(:users) - > 0.0012s == CreateUsers:migrated( 0.0013秒)===========================================

== AddEmailUniquenessIndex:迁移======================================== - add_index(: users,:email,{:unique => true}) - > 0.0008s == AddEmailUniquenessIndex:migrated(0.0009s)======================== =======

== AddPasswordToUsers:迁移============================================= - add_column(:users,:encrypted_password,:string) - > 0.0352s == AddPasswordToUsers:migrated(0.0353s)======================== ============

== AddSaltToUsers:迁移============================================= ==== - add_column(:users,:salt,:string) - > 0.0005s == AddSaltToUsers:migrated(0.0006s)==================== ====================

== AddAdminToUsers:迁移============================================= === - add_column(:users,:admin,:boolean,{:default => false}) - > 0.0092s == AddAdminToUsers:migrated(0.0093s)============= ==========================

== CreateMicroposts:迁移============================================= == - create_table(:microposts) - > 0.0009s == CreateMicroposts:migrated(0.0010s)============================ ==========

== CreateRelationships:迁移============================================ - - create_table(:relationships) - > 0.0009s - add_index(:relationships,:follower_id) - > 0.0004s - add_index(:relationships,:followed_id) - > 0.0004s == CreateRelationships:migrated(0.0019s)=== ================================

== CreateCarts:迁移============================================= ======= - create_table(:carts) - > 0.0014s == CreateCarts:已迁移(0.0015s)======================= ====================

== CreateLineItems:迁移============================================= === - create_table(:line_items) - > 0.0010s == CreateLineItems:migrated(0.0010s)=========================== ============

== AddQuantityToLineItem:migrating ========================================== - add_column (:line_items,:quantity,:integer,{:default => 1}) - > 0.0006s == AddQuantityToLineItem:migrated(0.0007s)=================== ==============

== CombineItemsInCart:迁移============================================= == CombineItemsInCart:已迁移(0.0134s)====================================

== CreateOrders:迁移============================================= ====== - create_table(:orders) - > 0.0011s == CreateOrders:migrated(0.0012s)======================== ==================

== AddOrderIdToLineItem:迁移=========================================== - add_column(:line_items,:order_id,:integer) - > 0.0005s == AddOrderIdToLineItem:migrated(0.0005s)========================== ========

== AddUsernameToUsers:迁移============================================= - add_column(:users,:username,:string) - > 0.0005s == AddUsernameToUsers:migrated(0.0006s)======================== ============

== AddUsernameUniquenessIndex:迁移===================================== - add_index(:users,: username,{:unique => true}) - > 0.0012s ==AddUsernameUniquenessIndex:已迁移(0.0014s)============================

== CreateStores:迁移============================================= ====== - create_table(:stores) - > 0.0010s == CreateStores:migrated(0.0011s)======================== ==================

== AddPasswordToStores:迁移============================================ - - add_column(:stores,:encrypted_password,:string) - > 0.0007s == AddPasswordToStores:migrated(0.0008s)========================= ==========

== AddUsernameToStores:迁移============================================ - - add_column(:stores,:username,:string) - > 0.0006s == AddUsernameToStores:migrated(0.0007s)========================= ==========

== AddSaltToStores:迁移============================================= === - add_column(:stores,:salt,:string) - > 0.0009s == AddSaltToStores:migrated(0.0010s)===================== ==================

== AddAdminToStores:迁移============================================= == - add_column(:stores,:admin,:boolean,{:default => false}) - > 0.0008s == AddAdminToStores:migrated(0.0009s)============== ========================

== RemoveNameFromOrders:迁移=========================================== - remove_column(:orders,:name) - > 0.0062s == RemoveNameFromOrders:migrated(0.0063s)============================= =====

== AddFirstNameToOrders:迁移=========================================== - add_column(:orders,:first_name,:string) - > 0.0005s == AddFirstNameToOrders:migrated(0.0006s)========================== ========

== AddLastNameToOrders:迁移============================================ - - add_column(:orders,:last_name,:string) - > 0.0005s == AddLastNameToOrders:migrated(0.0006s)========================= ==========

== AddAddress1ToOrders:迁移============================================ - - add_column(:orders,:address1,:text) - > 0.0006s == AddAddress1ToOrders:migrated(0.0007s)========================= ==========

== AddCardExpiresOnToOrders:迁移======================================= - add_column(:orders ,:card_expires_on,:date) - > 0.0005s == AddCardExpiresOnToOrders:migrated(0.0006s)==============================

== AddBillingidToUsers:迁移============================================ - - add_column(:users,:billing_id,:string) - > 0.0005s == AddBillingidToUsers:migrated(0.0006s)========================= ==========

== RemoveNameFromStores:迁移=========================================== - remove_column(:stores,:name) - > 0.0093s == RemoveNameFromStores:migrated(0.0094s)============================= =====

== RemoveSaltFromStores:迁移=========================================== - remove_column(:stores,:salt) - > 0.0079s == RemoveSaltFromStores:migrated(0.0080s)============================= =====

== RemoveAdminFromStores:迁移========================================== - remove_column (:stores,:admin) - > 0.0065s == RemoveAdminFromStores:migrated(0.0066s)============================== ===

== RemoveUsernameFromStores:migrating ======================================= - remove_column(:stores ,:username) - > 0.0063s == RemoveUsernameFromStores:migrated(0.0065s)==============================

== AddStorenameToStores:迁移=========================================== - add_column(:stores,:store_name,:string) - > 0.0006s == AddStorenameToStores:migrated(0.0007s)========================== ========

== RemoveEncryptedPasswordFromStores:migrating ============================== - remove_column(:stores,:encrypted_password) - > 0.0060s = = RemoveEncryptedPasswordFromStores:已迁移(0.0061s)=====================

== AddUserIdToStores:迁移============================================= = - add_column(:stores,:user_id,:integer)rake aborted!发生错误,此以及所有后续迁移都已取消:

SQLite3 :: SQLException:重复的列名:user_id:ALTER TABLE“stores”ADD“user_id”整数

错误:

== AddUserIdToStores:迁移============================================= = - add_column(:stores,:user_id,:integer)rake aborted!发生错误,此以及所有后续迁移都已取消:

SQLite3 :: SQLException:重复的列名:user_id:ALTER TABLE“stores”ADD“user_id”整数

我没有得到这个,因为我没有两次添加此列 . 我搞乱了迁移文件,这与此有什么关系吗?谢谢 . 我真的希望有人可以帮忙解决这个问题 .

1 回答

  • 4

    迁移倾向于当你连续运行它们时会中断 . 如果要从头开始创建数据库,请使用:

    heroku db:schema:load
    

    一般来说,我倾向于在我的开发数据库中获得一些合理的东西并且只是使

    heroku db:push
    

    如果您不熟悉它,它会将dev db中的架构和数据复制到heroku上的app db . 对于您的问题,其中任何一个都可能是合理的解决方法 . 我希望有所帮助 .

相关问题