所以我是新来的Rails,我一直在试图建立一个嵌套的形式。我一直有很多麻烦,似乎无法让它工作..我在YouTube上看过多个视频,但我似乎无法找到我所做的不同。为了我试图建立一个,我有一个产品有很多买家,但一个买家只属于一个产品。 (假设你只能购买一种产品...)。当我提交我的形式我得到一个错误,我可以在服务器日志中看到:“不允许的参数:买家”我觉得我已经尝试了一切。我会是这么高兴,如果有人也许可以告诉我怎么回事。非常感谢嵌套的形式:未经许可的参数
我按照Rails的引导和增加了以下我的模型:
class Product < ActiveRecord::Base
has_many :orders
has_many :buyers
accepts_nested_attributes_for :buyers
end
class Buyer < ActiveRecord::Base
belongs_to :product
end
强PARAMS在产品控制器:
def product_params
params.require(:product).permit(:name, :description, :image_url, :color, :adult, buyers_attributes: [:name, :age, :product_id])
end
,产品控制器:
def new
@product = Product.new
@product.buyers.build end
然后为以下形式: Form (对不起,在这里有插入代码的重大问题)
最后我这两个表的模式:
create_table "buyers", force: :cascade do |t|
t.string "name"
t.integer "age"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.integer "product_id" end
`
create_table "products", force: :cascade do |t|
t.string "name"
t.text "description"
t.string "image_url"
t.string "color"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.integer "price"
t.binary "adult"
end
我认为你需要的buyers_attributes阵列 – margo
我已经尝试过的ID与两个:PRODUCT_ID和:ID :( –