ruby-on-rails – 如何在select_tag / options_from_collection_for_select中设置“selected”

我一直在搜索stackoverflow几乎2个小时,现在经历类似的问题,但答案似乎不起作用.

我有以下代码

<%= select_tag "name_dropdown",options_from_collection_for_select(@models,"friendly_id","name") %>

我想显示我之前选择的选项,而不是认进入第一个标签.

在其他问题中,他们建议添加以下内容(其中没有一个).

<%= select_tag "name_dropdown","name","1") %>

要么:

<%= select_tag "name_dropdown",@models.first.id) %>

PS.我使用的是Rails 3.1.RC4

解决方法

假设除了包含完整列表的@model之外,还有一个包含当前记录的@model,那么可以执行以下操作:
<%= 
  select_tag "name_dropdown",@model.id) 
%>

基本上,options_from_collection_for_select(…)的第四个参数应包含要选择的项目的ID.您的第二个代码示例强制每次选择的ID为1,并且您发布的第三个样本总是使所选的@models中的第一个项目,无论当前选择的实际模型如何.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...