Не уверен, почему мой начальный файл рейка не запускается - PullRequest
0 голосов
/ 06 мая 2020

вот мой исходный файл:

require 'pry'
require 'rest-client'
require 'json'
require 'faker'

Consumer.delete_all
AlcoholicBeverage.delete_all
Intake.delete_all

100.times do 
    name = Faker::Name.first_name
    sex= Faker::Gender.binary_type
    weight= Faker::Number.between(from: 1, to: 10)
    Consumer.create!(name:name,sex:sex,weight:weight)
end

ingredients=RestClient.get("https://raw.githubusercontent.com/teijo/iba-cocktails/master/recipes.json")
@ingredients_data=JSON.parse(ingredients)

@ingredients_data.collect do |x,y|
    AlcoholicBeverage.create(cocktail_name: x["name"],glass: x["glass"],garnish: x["garnish"],preparation: x["preparation"])
end

100.times do 
    consumer_id = rand(1..100)
    alcoholic_beverage_id = rand(1..100)
    Intake.create!(consumer_id: consumer_id, alcoholic_beverage_id:alcoholic_beverage_id)
end

вот мой гем-файл:

# frozen_string_literal: true
source "https://rubygems.org"

gem "activerecord", '~> 5.2'
gem "sinatra-activerecord"
gem "sqlite3", '~> 1.3.6'
gem "pry"
gem "require_all"
gem "faker"
gem 'rest-client'

Я уже выполнил свои миграции нормально ... так что я не уверен, почему ничего появляется, когда я ввожу rake db: seed в свой терминал. Мы будем очень благодарны за любой совет или помощь. Я также пробовал включить require 'faker' в свой исходный файл, но это ничего не изменило.

1 Ответ

0 голосов
/ 07 мая 2020

Этот альтернативный подход поможет вам избежать пропуска данных, вне зависимости от ваших идентификаторов от 1 до 100:

consumers = 100.times.map do 
  name = Faker::Name.first_name
  sex= Faker::Gender.binary_type
  weight= Faker::Number.between(from: 1, to: 10)
  Consumer.create!(name:name,sex:sex,weight:weight)
end

ingredients=RestClient.get("https://raw.githubusercontent.com/teijo/iba-cocktails/master/recipes.json")
@ingredients_data=JSON.parse(ingredients)

beverages = @ingredients_data.map do |x,y|
  AlcoholicBeverage.create(cocktail_name: x["name"],glass: x["glass"],garnish: x["garnish"],preparation: x["preparation"])
end

100.times do 
  Intake.create!(consumer: consumers.shuffle.first, alcoholic_beverage: beverages.shuffle.first)
end
...