【问题标题】:How to seed database with data from yaml file? Ruby on rails如何使用来自 yaml 文件的数据播种数据库?轨道上的红宝石
【发布时间】:2017-06-06 12:09:51
【问题描述】:

我需要用来自 yaml 文件的数据填充我的数据库,该文件包含以下内容:

-Users:
------Users_nameship: 'First group'
------Members:
----------Name:'Jack'

等等。 我需要使用 seed.rb 文件 现在我做了这样的事情:

    require 'yaml'

    seed_file = Rails.root.join('db', 'seeds.yml')
    @config = Hash.new(YAML::load_file(seed_file))
    @config.each do |key, values|
        values.each do |k,v|
            Project.create title:v
        end
    end

但它不会填充表格中的任何单元格。请帮忙

【问题讨论】:

    标签: ruby-on-rails ruby database yaml


    【解决方案1】:

    Yaml 文件被夹具用于测试目的。另一方面,您可以使用 db/seed.rb 使用以下命令填充您的数据库:

    rake db:seed
    

    检查以下型号:

    class Group < ApplicationRecord
      has_many :users
    end
    
    class User < ApplicationRecord
      belongs_to :group
    end
    

    您可以使用以下 seed.rb 文件生成两个包含两个用户的组:

    Group.create!([{name: "First group"}, {name: "Second group"}])
    
    User.create!([{name: 'Jack', group_id: 1}, {name: 'Bob', group_id: 1}, {name: 'Robert', group_id: 2}, {name: 'John', group_id: 2}])
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-08-15
      • 1970-01-01
      • 1970-01-01
      • 2012-05-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多