我知道,已经提出了许多与强对手相关的问题,但我在这里面临一种非常奇怪的行为。我有一个带有嵌套属性的模型,允许使用正确的参数(我检查过一百次拼写错误)并仍然得到错误:
class Api::HotelsController < ApiController
...
def hotel_params
params.require(:hotel).permit(:id, :listing_name, ..., seasons_attributes:[:id, :season_start, :season_end, :period, :_destroy])
end
end
关于这一点很奇怪:在同一个嵌套模型中有第三个变量被接受!
这是我的相关代码:
class Hotel < ApplicationRecord
...
has_many :seasons, dependent: :destroy
accepts_nested_attributes_for :seasons, update_only: true, allow_destroy: true
end
我的模特:
:period
我完全不知道可能出现什么问题,并尝试了各种各样的事情来解决问题,但我无法弄清楚,为什么:season_start
被允许但:season_end
和{{1}不是。
这里是收到的参数的日志信息:
"seasons_attributes"=>[{"period"=>"mid-season", "season_start"=>{}, "season_end"=>{}}]}