.each语句中的Ruby on rails错误

时间:2013-01-25 11:50:03

标签: html mysql ruby-on-rails

<% temp1= "secondary" %>
<% @query = "select  credentials_id from credentials where credentials_id LIKE '%" + temp1 + "%'" %>
<% Request.connection.execute(@query) %>

<% if @query.blank? %>
    <p>These are no  secondary users still created </p>
<% else %>
    <% @query.each do |c| %>
        <%= label_tag(:credentials_id,c.credentials_id)%>
    <%end%>
<%end%>

我正在尝试执行上面的代码,我已在“admin.html.erb”文件中编写,但我收到以下错误:

  

的未定义方法'each'

1 个答案:

答案 0 :(得分:1)

@query变量只是String。如果要迭代该字符串上的每个字符,则应使用each_char方法。

我真的相信你正在迭代错误的变量。我想你想迭代你的查询结果,而不是你的查询字符!为此你应该做的事情如下:

<% @query_result = Request.connection.execute(@query) %>
<% @query_result.each do |c| %>
    <%= label_tag(:credentials_id,c.credentials_id)%>
<%end%>