Ruby on Rails:html.erb中值的比较

时间:2013-02-01 12:17:34

标签: ruby-on-rails erb

我正在使用此example for uploading files in Ruby on Rails. 我在上传/ index.html.erb

时遇到了一些问题

我还有一些变量,如: current_user.id - 用户的ID现在如何在线
user_id - 上传表中的user_id,就像外键一样,可以为一个用户分配多个上传。

所以,我想只列出那些user_id对应current_user.id的上传文件。我尝试在这一行

((({%=file.user_id%}).to_i)==((<%=current_user.id%>).to_i))

不知怎的,它不起作用,因为也会列出其user_id与current_user.id不对应的上传。

<script id="template-download" type="text/x-tmpl">

  {% for (var i=0, file; file=o.files[i]; i++) { %}
  {% if ((({%=file.user_id%}).to_i)==((<%=current_user.id%>).to_i)){ %} 
    <tr class="template-download fade">    

      <td class="l">
       <a href="{%=file.url%}" download="{%=file.name%}">{%=file.user_id%}</a>
      </td>
      <td class="k">
       <a href="{%=file.url%}" download="{%=file.name%}"><%=current_user.id%></a>
      </td>  


      <td class="name">
       <a href="{%=file.url%}" download="{%=file.name%}">{%=file.name%}</a>
      </td>

       <td class="delete">
        <button class="btn btn-mini btn-danger" data-type="{%=file.delete_type%}" data-url="{%=file.delete_url%}"> 
          <i class="icon-trash icon-white"></i>

        </button>
        <input type="checkbox" name="delete" value="1">
      </td>



       <td></td>


    </tr>
{% } %}


    {% } %}
</script>

1 个答案:

答案 0 :(得分:1)

您可以在控制器smth中获取上传内容。喜欢

@files = Upload.where(:user_id => current_user.id) 

或者您的User型号has_many :uploads可以制作

@files = current_user.uploads

然后在视图的@files变量中,您只能上传与current_user

相对应的内容