【问题标题】:Nothing happened when i run db:seed on Heroku当我在 Heroku 上运行 db:seed 时什么也没发生
【发布时间】:2016-05-09 15:36:57
【问题描述】:

我的应用是由 Sinatra 制作的,在我的本地服务器上一切正常。 但是当我部署到 Heroku 并运行此命令时

$ heroku run rake db:seed

即使这个命令运行良好,也没有发生任何事情。

$ heroku run rake db:migrate

这是我的种子代码

require_relative '../app/models/question'
require_relative '../app/models/answer'
require_relative '../app/models/user'
require 'faker'

class TaskSeed
    def self.faker
        20.times do 
            Question.create(
                :content => Faker::Lorem.sentence(200, true), 
                :headline => Faker::Lorem.sentence,
                :user_id => Faker::Number.between(1, 10)
                ) 
        end

        40.times do 
            Answer.create(
                :content => Faker::Lorem.sentence(20, true), 
                :headline => Faker::Lorem.sentence,
                :user_id => Faker::Number.between(1, 10),
                :question_id => Faker::Number.between(1, 10)
                ) 
        end

        20.times do
            User.create(
                :username => Faker::Internet.user_name, 
                :email => Faker::Internet.email,
                :encrypted_password => Faker::Internet.password(10, 20)
                ) 
        end

        vote_type_arr = ['up','down'] 

        50.times do
            QuestionVote.create(
                :type => vote_type_arr[rand(0..1)],
                :question_id => Faker::Number.between(1, 20)
                ) 
        end
    end
end

TaskSeed.faker

有人知道如何解决这个问题吗?

谢谢!


自从项目创建以来,我一直使用 PostgreSQL 作为我的本地。

【问题讨论】:

  • 你的意思是没有输出或者那些表还是空的?顺便说一句,我会使用 create!以避免由于验证导致的静默失败。
  • 我的意思是我猜桌子还是空的。因为他们没有在控制台中返回任何文本,并且我在需要联系表格的每个页面上都遇到了内部错误。
  • 与其猜测,不如检查表的内容(例如在 rails 控制台中)。错误很可能是因为没有任何东西可以保证您在 question_id 中输入的值(例如)实际上是问题的 id。

标签: ruby activerecord heroku sinatra


【解决方案1】:

如果你的本地数据库是干净的(没有测试数据),那么你可以试试heroku db:push

如果您使用的是默认 PostgreSQL,请尝试

heroku pg:reset
heroku rake db:seed

【讨论】:

  • 我使用 PostgreSQL 作为我的本地。我试过那个,但也没有用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-21
  • 2012-03-14
  • 1970-01-01
  • 1970-01-01
  • 2022-07-04
  • 1970-01-01
相关资源
最近更新 更多