Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 选择ror中的选项标记?_Ruby On Rails_Ruby_Select_Drop Down Menu_Option - Fatal编程技术网

Ruby on rails 选择ror中的选项标记?

Ruby on rails 选择ror中的选项标记?,ruby-on-rails,ruby,select,drop-down-menu,option,Ruby On Rails,Ruby,Select,Drop Down Menu,Option,我是ror的新手 在rails中选择标记选项 <%= select_tag(:city_id, '<option value="1">Lisbon</option>,<option value="2">Madrid</option>' %> 生成此html: <select id="city_id" name="city_id"> <option value="1">Lisbon</optio

我是ror的新手

在rails中选择标记选项

<%= select_tag(:city_id, '<option value="1">Lisbon</option>,<option value="2">Madrid</option>' %>

生成此html:

<select id="city_id" name="city_id">
    <option value="1">Lisbon</option>
<option value="2">hjkLisbon</option>
</select>
<select id="city_id" name="city_id">
<option value="1">Lisbon</option>
<option value="2">Madrid</option>
</select>

里斯本
hjkLisbon
和选项选择标签

<%= select_tag(:city_id, options_for_select([['Lisbon', 1], ['Madrid', 2]])) %>

生成此html:

<select id="city_id" name="city_id">
    <option value="1">Lisbon</option>
<option value="2">hjkLisbon</option>
</select>
<select id="city_id" name="city_id">
<option value="1">Lisbon</option>
<option value="2">Madrid</option>
</select>

里斯本
马德里
对于第二个选项选择标记,我得到了带有选项的下拉列表,但在第一个选项中我没有得到它,只有下拉列表在第一个选项中,但没有选项。
有人能解释一下为什么会这样吗?

如果你只有这两个城市,你可以使用普通的html

<select id="city_id" name="city_id">
<option value="1">Lisbon</option>
<option value="2">Madrid</option>
</select>
这将产生如下结果:

<select id="city_id" name="city_id">
  <option value="1">Lisbon</option>
  <option value="2">Madrid</option>
</select>

里斯本
马德里

不要害怕使用html。最简单的解决方案就是最好的解决方案。

如果你只有这两个城市,你可以使用普通的html

<select id="city_id" name="city_id">
<option value="1">Lisbon</option>
<option value="2">Madrid</option>
</select>
这将产生如下结果:

<select id="city_id" name="city_id">
  <option value="1">Lisbon</option>
  <option value="2">Madrid</option>
</select>

里斯本
马德里
不要害怕使用html。最简单的解决方案就是最好的解决方案。

Ref

改变

<%= select_tag(:city_id, '<option value="1">Lisbon</option>,<option value="2">Madrid</option>' %>


您没有关闭选择标记,即
缺失

改变

<%= select_tag(:city_id, '<option value="1">Lisbon</option>,<option value="2">Madrid</option>' %>



您没有关闭选择标记,即,
丢失

如果您确实想在编辑页面上保持选中国家名称,则

<%= f.select :country, (country_name), :selected => @model.country %>
@model.country%>

其中,
country\u name
是helper中的一个方法。

如果您确实希望在编辑页面上保持选中国家名称,则

<%= f.select :country, (country_name), :selected => @model.country %>
@model.country%>

其中,
country\u name
是helper中的一个方法。

因为我是rails新手,所以我想知道为什么第一个代码不起作用,即使生成相同的html.rails方法对于如何传递选项来说非常特殊。选择标签是一种rails方法。您向select_标记方法发送选项的第一种方式是不正确的。因为我是rails新手,所以我想知道为什么第一个代码不起作用,即使生成相同的html.rails方法对于如何传递选项非常特殊。选择标签是一种rails方法。向select_标记方法发送选项的第一种方式不正确。