我在一种视图中使用了表单帮助器,希望用户从选项列表中进行选择。然后,我想将选择的选项的等效ID存储到我的数据库中。但是,每次我选择一个选项时,它的ID都不会被存储,而数据库只会对此属性说nil。
<%= f.label :"Team Against" %><br>
<%= f.select :opposing_team, options_for_select([['Team 1', 1], ['Team 2', 2], ['Team 3', 3]]) %><br>
例如,我在表中有一个名为“ opposed_team”的列,并且当用户选择了团队1时,我想使用值1更新relative_team。目前,我可以选择以下形式的选项范围,但relative_team值永远是零。
编辑:
def create
@league = League.find(params[:league_id])
@team = @league.teams.find(params[:team_id])
@fixture = @team.fixtures.create(fixture_params)
if @fixture.save
redirect_to league_team_path(:league_id => @league.id, :id => @team.id)
else
render 'new'
end
end
def new
@team = Team.find(params[:team_id])
@fixture = Fixture.new
end
这就是灯具控制器的组成。relative_team是数据库中的整数值。
这是一个常见的问题,最常见的答案是strong_parameters缺少必需的键。在控制器中,您最后是否有一个类似于以下内容的方法:
def fixture_params
params.require(:fixture).permit(:value, :other_value)
end
如果是这样,请添加:opposing_team
到密钥列表中。
def fixture_params
params.require(:fixture).permit(:value, :other_value, :opposing_team)
end
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句