4

次のようなjsonファイルからシードファイルにオブジェクトをインポートしています:

[
{
    "email":"jon@a.com",
    "id":1,
    "league_id":1,
    "name":"Slim Jims are good for the heart...OH YEAH!",
    "owner":"Jon"
},
{
    "email":"robert@a.com",
    "id":2,
    "league_id":1,
    "name":"The Bucket List",
    "owner":"Robert"
}
]

私のシードファイルは次のとおりです。

require 'json'
Team.delete_all
JSON.parse(open("#{Rails.root}/doc/teams.json").read).each do |stuff|
   Team.create(stuff)
end

私の問題は、json ファイルの ID ではなく、ランダムな ID が割り当てられることです。

4

1 に答える 1

8

疑問に思っている人のために、作成の代わりに次の構文を使用してこれを行うことができます。

JSON.parse(open("#{Rails.root}/doc/teams.json").read).each do |stuff|
    team = Team.new(stuff)
    team.id = stuff['id']
    team.save!
end
于 2012-09-11T15:42:58.970 に答える