我试图在终端中运行rails db:seed时出现问题。 它给我下面的错误:NoMethodError:未定义方法`[]'为零:NilClass
NoMethodError
: undefined method `[]' for nil:NilClass
你能帮帮我吗?到目前为止,我尝试了几件事情,但没有成功。
(1..50).each do |movie|
response = HTTParty.get("https://api.themoviedb.org/3/movie/popular?api_key=8d027704c57524153a0af2b38415ac45&language=en-US&page=1")
results = JSON.parse(response.body)
movie = Movie.new({
title: results["title"],
popularity: results[0]["popularity"],
image: results["poster_path"],
year: results[0]["release_date"],
genre: results[0]["genre_ids"]
})
movie.save
puts "#{movie['title']} was saved."
end
我的模式是这样的:
create_table "movies", force: :cascade do |t|
t.string "title"
t.string "image"
t.string "year"
t.string "genre"
t.string "rating"
t.string "popularity"
t.string "video"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
end
谢谢您的帮助。
_“我已经试过几件事情” _ - 我会做的第一件事是推出'irb'(或'轨console'),并通过线(或表达执行的代码行表达)。它会显示'results [“title”]'和'results [0]'返回'nil'。 – Stefan