我的应用程序是由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作为我的本地人。
答案 0 :(得分:0)
如果您的本地数据库是干净的(没有测试数据),那么您可以尝试heroku db:push
如果您使用的是默认的PostgreSQL,请尝试
heroku pg:reset
heroku rake db:seed