gpt4 book ai didi

ruby-on-rails - 由于格式错误, Controller 未在 Rails 中建立关联

转载 作者:数据小太阳 更新时间:2023-10-29 08:44:30 25 4
gpt4 key购买 nike

我需要为 Modification 模型 if.save 建立新的关联。此外,这些关联需要与相关的 Entity 模型相同。但是我收到了这个错误:

When assigning attributes, you must pass a hash as an argument.

ModificationController.rb

def create
@modification = Modification.new(change_params)

respond_to do |format|
if @modification.save

@modification.entity.boxes.each do |d|
@modification.boxes.new(d)
end

flash[:success] = "Success"
format.html { redirect_to @modification }
format.json { render :show, status: :created, location: @modification }
else
format.html { render :new }
format.json { render json: @modification.errors, status: :unprocessable_entity }
end
end
end

更多信息:

每个修改 belongs_to 实体ModificationsEntities 都有_many Boxes

最佳答案

因此,您想使用现有的 Box 创建一个新的框关联。我们可以获取现有框的属性来创建新框。然而,一个现有的框已经有一个 id,所以我们需要从属性中排除它。

按照上述逻辑,下面的操作应该有效:

def create
@modification = Modification.new(change_params)

respond_to do |format|
if @modification.save

@modification.entity.boxes.each do |d|
@modification.boxes << d.dup
end

flash[:success] = "Success"
format.html { redirect_to @modification }
format.json { render :show, status: :created, location: @modification }
else
format.html { render :new }
format.json { render json: @modification.errors, status: :unprocessable_entity }
end
end
end

关于ruby-on-rails - 由于格式错误, Controller 未在 Rails 中建立关联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34290074/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com