Сеяние модели рельсов с решеткой в рельсах

103
14

Я понимаю, что ответ может быть в аналогичных ответах, которые я прочитал, но у меня пока нет полномочий для получения решения от них.

Я пытаюсь выровнять столбец в модели рельсов с помощью массива:

["N1", "N2", "N3", "N4", "N5", etc ]

Каждое значение будет представлять новую строку (или запись? Не уверенную правильную терминологию) в столбце базы данных.

В настоящее время, подобно тому, что было предложено в аналогичных постов, я использую:

[above array].each do |pc| 
Postcodes.create!({ pcode => pc})
end

Но я получаю следующую ошибку:

NameError: uninitialized constant Postcodes

Я пробовал un-pluralizing имя модели, а также не-капитализировать, но это, похоже, не помогает.

дб: схема:

ActiveRecord :: Schema.define (версия: 20151211095938) do

create_table "users", force: :cascade do |t|
t.string "first_name"
t.string "last_name"
t.string "email"
t.string "password_digest"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false

конец

конец

Модель:

class Postcode < ActiveRecord::Base
end

спросил(а) 2021-01-19T17:06:26+03:00 9 месяцев назад
1
Решение
80

Ваша модель имена Postcode, не Postcodes (не во множественном s). Следующее должно работать:

codes = ["N1", "N2", "N3", "N4", "N5"]

codes.each do |code|
Postcode.create!(pcode: code)
end

ответил(а) 2021-01-19T17:06:26+03:00 9 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема