繁体   English   中英

在Heroku上上传种子数据时出错

[英]Error in uploading seed data on heroku

首先,这是edX Saas课程的家庭作业问题,但由于错误与我的作业没有直接关系,因此我仍将其发布在此处。

我已经使用Ruby on Rails制作了一个应用程序并将其托管在heroku上。 我的本地主机上的应用程序显示了所有电影的名称,但是当我在heroku上打开它时,没有可见的电影名称。

我使用heroku run rake:seed更新了我的种子数据。 这是我的种子文件:

if count = Movie.count  > 0
Movie.delete_all
puts "deleting #{count} old rows of seed data"
end

movies = [{:title => 'Aladdin', :rating => 'G', :release_date => '25-Nov-1992'},
        {:title => 'The Terminator', :rating => 'R', :release_date => '26-Oct-1984'},
        {:title => 'When Harry Met Sally', :rating => 'R', :release_date => '21-Jul-1989'},
      {:title => 'The Help', :rating => 'PG-13', :release_date => '10-Aug-2011'},
      {:title => 'Chocolat', :rating => 'PG-13', :release_date => '5-Jan-2001'},
      {:title => 'Amelie', :rating => 'R', :release_date => '25-Apr-2001'},
      {:title => '2001: A Space Odyssey', :rating => 'G', :release_date => '6-Apr-1968'},
      {:title => 'The Incredibles', :rating => 'PG', :release_date => '5-Nov-2004'},
      {:title => 'Raiders of the Lost Ark', :rating => 'PG', :release_date => '12-Jun-1981'},
      {:title => 'Chicken Run', :rating => 'G', :release_date => '21-Jun-2000'},
     ]

movies.each do |movie|
 Movie.create!(movie)
end

当我尝试运行heroku run rails console然后再heroku run rails console Movie.all 我的数据库为:

[#<Movie id: 53, title: nil, rating: nil, description: nil, release_date: nil, created_at: "2014-11-30 18:29:18", updated_at: "2014-11-30 18:29:18">, #<Movie id: 54, title: nil, rating: nil, description: nil, release_date: nil, created_at: "2014-11-30 18:29:18", updated_at: "2014-11-30 18:29:18">, #<Movie id: 55, title: nil, rating: nil, description: nil, release_date: nil, created_at: "2014-11-30 18:29:18", updated_at: "2014-11-30 18:29:18">, #<Movie id: 56, title: nil, rating: nil, description: nil, release_date: nil, created_at: "2014-11-30 18:29:18", updated_at: "2014-11-30 18:29:18">, #<Movie id: 57, title: nil, rating: nil, description: nil, release_date: nil, created_at: "2014-11-30 18:29:18", updated_at: "2014-11-30 18:29:18">, #<Movie id: 58, title: nil, rating: nil, description: nil, release_date: nil, created_at: "2014-11-30 18:29:18", updated_at: "2014-11-30 18:29:18">, #<Movie id: 59, title: nil, rating: nil, description: nil, release_date: nil, created_at: "2014-11-30 18:29:18", updated_at: "2014-11-30 18:29:18">, #<Movie id: 60, title: nil, rating: nil, description: nil, release_date: nil, created_at: "2014-11-30 18:29:18", updated_at: "2014-11-30 18:29:18">, #<Movie id: 61, title: nil, rating: nil, description: nil, release_date: nil, created_at: "2014-11-30 18:29:18", updated_at: "2014-11-30 18:29:18">, #<Movie id: 62, title: nil, rating: nil, description: nil, release_date: nil, created_at: "2014-11-30 18:29:18", updated_at: "2014-11-30 18:29:18">]

为什么在我在本地托管的应用程序中可以看到标题,等级,描述等数据为零?

尝试这样的事情:

m = Movie.new :title => 'Aladdin', :rating => 'G', :release_date => '25-Nov-1992'
m.save

然后尝试:

movies.each do |movie|
 m = Movie.new(movie) #given that movie is in the format above. 
 m.save
end

暂无
暂无

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

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