У меня есть некоторые модели в моем приложении, и я пытаюсь сохранить данные, но я получил сообщение об ошибке:Rails реляционной модели MissingAttributeError
ActiveModel :: MissingAttributeError (не может писать неизвестный атрибут product_id
): приложения/контроллеры/admin_controller.rb: 27: в `create_product»
у меня есть 3 модели
Категория модель
class Category < ActiveRecord::Base
has_many :features
has_many :products
end
миграции:
class CreateCategories < ActiveRecord::Migration
def change
create_table :categories do |t|
t.string :name, null: false
t.boolean :active, null: false, default: false
t.timestamps null: false
end
end
Характеристика Модель
class Feature < ActiveRecord::Base
has_and_belongs_to_many :categories
has_and_belongs_to_many :products
end
миграции
class CreateFeatures < ActiveRecord::Migration
def change
create_table :features do |t|
t.belongs_to :category, index:true
t.string :name, null: false
t.timestamps null: false
end
end
Модель продукта
class Product < ActiveRecord::Base
belongs_to :category
has_many :features
end
миграции
class CreateProducts < ActiveRecord::Migration
def change
create_table :products do |t|
t.belongs_to :category, index:true
t.string :name, null: false
t.text :rating, null: false
t.timestamps null: false
end
end
Я получил эту ошибку, когда я пытаюсь сохранить продукт,
ActiveModel::MissingAttributeError (can't write unknown attribute
product_id
): app/controllers/admin_controller.rb:27:in `create_product'
Я не могу понять, что происходит
какие-нибудь идеи?
Благодаря
Поскольку ошибка исходит из admin_controller, может вы также можете включить этот код? –
Является ли функция объединением для категории и модели продукта? – Darpa