在我的Rails应用程序中运行以下内容时,我收到了一个未知属性错误。
@appointment = Appointment.find(params[:id])
@appointment.update_attributes(appointment_params)
我得到ActiveRecord::UnknownAttributeError
。约会模型上的未知属性为appointment_id
。
我已删除此字段,删除了model.rb上的关联,将其从强params定义中删除,以及我能想到的其他任何位置。
我在创建或更新时没有将appointment_id
发布到服务器上,并且我已经通过返回appointment_params
验证了这一点,但它仍然没有回来。
可能导致抛出此错误的原因是什么?
答案 0 :(得分:0)
根据你的评论,
def appointment_params
params.require(:appointment).permit(:field1, :field2, :etc)
end
ActiveRecord::UnknownAttributeError
表示您的数据库中不包含:field1
,:field2
或:etc
。
如果查看schema.rb文件,appointments
表中至少应缺少其中一个字段。
FWIW,在您每天工作8小时Rails几年之后,这个错误将不再模糊。