2016-11-25 102 views
1

我想通过解析一个JSON文件并运行一次可以创建我的模型实例并将其保存在我的数据库中的ruby脚本来填充我的数据库。如何在Rails中使用JSON填充我的数据库?

示例脚本:

require 'json' 
require 'byebug' 

file = File.read('players.json') 
data_hash = JSON.parse(file) 
data_hash_size = data_hash['Name'].size 

data_hash.each_with_index do |i| 
    @student = student.new 
    @student.name = data_hash['Name'][i] 
    @student.college_year = data_hash['Cl.'][i] 
    @student.save! 
end 

我的问题是,我在哪里我的应用程序把这样一个剧本,我怎么把它连接到我想创建的填充数据库实例的模式?目前,它给了我一个错误:未定义的本地变量或方法学生为主:对象(NameError)。我甚至试过require 'app/models/student.rb',它仍然不起作用。我目前已将脚本放置在应用程序主目录中(使用README文件等)。任何帮助将不胜感激,谢谢!

回答

2

尝试将您的脚本文件放在Rail的script目录中。一旦你把它添加到你的文件的顶部:

#! /usr/bin/env ruby 

require '../config/environment' 

.......script code..... 
+0

谢谢,它现在工作。如果我只想运行一次这个脚本来填充数据库,那么我是通过rails控制台(还是Heroku控制台部署时)来运行它,还是有更优雅的方式? – YSA

相关问题