html - 无法获取 HTML 选择表单以显示用户先前保存到数据库的选定 home_state
问题描述
当用户选择任何状态并保存然后重新加载时,它只返回第一个状态,即阿拉巴马州。我通过 rails 控制台检查了数据库,以确认它正确保存并且确实保存了,但 HTML 选择不仅仅是获取正确的字段。其他字段正在接收正确的值。
这是_contact_info.html.erb
<div class="form-group col-md-4">
<%= f.select :home_state, options_for_select(us_states), id: "home_state",
prompt: "State", class: "form-control" %>
</div>
Application_controller.rb
<div class="form-group col-md-4">
<%= f.select :home_state, options_for_select(us_states), id: "home_state",
prompt: "State", class: "form-control" %>
</div
us_states.helper
模块 UsStatesHelper
def us_states
[
['Alabama', 'AL'],
['Alaska', 'AK'],
['Arizona', 'AZ'],
['Arkansas', 'AR'],
['California', 'CA'],
['Colorado', 'CO'],
['Connecticut', 'CT'],
['Delaware', 'DE'],
['District of Columbia', 'DC'],
['Florida', 'FL'],
['Georgia', 'GA'],
['Hawaii', 'HI'],
['Idaho', 'ID'],
['Illinois', 'IL'],
['Indiana', 'IN'],
['Iowa', 'IA'],
['Kansas', 'KS'],
['Kentucky', 'KY'],
['Louisiana', 'LA'],
['Maine', 'ME'],
['Maryland', 'MD'],
['Massachusetts', 'MA'],
['Michigan', 'MI'],
['Minnesota', 'MN'],
['Mississippi', 'MS'],
['Missouri', 'MO'],
['Montana', 'MT'],
['Nebraska', 'NE'],
['Nevada', 'NV'],
['New Hampshire', 'NH'],
['New Jersey', 'NJ'],
['New Mexico', 'NM'],
['New York', 'NY'],
['North Carolina', 'NC'],
['North Dakota', 'ND'],
['Ohio', 'OH'],
['Oklahoma', 'OK'],
['Oregon', 'OR'],
['Pennsylvania', 'PA'],
['Puerto Rico', 'PR'],
['Rhode Island', 'RI'],
['South Carolina', 'SC'],
['South Dakota', 'SD'],
['Tennessee', 'TN'],
['Texas', 'TX'],
['Utah', 'UT'],
['Vermont', 'VT'],
['Virginia', 'VA'],
['Washington', 'WA'],
['West Virginia', 'WV'],
['Wisconsin', 'WI'],
['Wyoming', 'WY']
] end
结尾
解决方案
您需要传入要开始选择的元素的值。就像是
<div class="form-group col-md-4">
<%= f.select :home_state, options_for_select(us_states, selected_state.abbreviation), id: "home_state",
prompt: "State", class: "form-control" %>
</div>
有关详细信息,请参阅https://guides.rubyonrails.org/form_helpers.html#the-select-and-option-tags
推荐阅读
- powershell - 撤销本地管理员但不是域管理员
- javascript - 模块根据需求从数据库加载数据
- angular - Angular:从另一个创建一个 Observable 列表并检索它
- javascript - Sequelize 迁移给出“错误:无法添加外键约束”
- python-3.x - 来自 Active Directory 的 Python ldap3 缩略图
- angular - 使用 canActivate 确定显示链接
- c# - '/usr/bin/python3: 在 Raspberry Pi 上使用单声道执行 .exe 文件时无法打开文件'test.py''
- r - 两个等长向量的逐元素比较
- flowtype - 优化数组类型的联合
- python - 了解 google ai 平台自定义预测例程的输入