我想在问题列表中隐藏问题编号。
我使用“Redmine 2.3.1”和文件来实现这个文件:./app/views/issues/_list.html.erb
它包含以下行:
<%= raw query.inline_columns.map {|column| "<td class=\"#{column.css_classes}\">#{column_content(column, issue)}</td>"}.join%>
数组query.inline_columns
包含例如id。我想修改这个数组可以帮助我解决我的问题,但是没有保存更改。
这就是我的尝试:
<%= @query.inline_columns.inspect %>
=> [#<QueryColumn:0x00000003607928 @name=:id ... and so on>]
<% @query.inline_columns.delete_at(0) %>
=>
<%= @query.inline_columns.inspect %>
=> [#<QueryColumn:0x00000003607928 @name=:id ... and so on>]
为什么delete_at
无用?我将如何修改此数组或隐藏数字?
答案 0 :(得分:0)
有几点需要注意:
@query.inline_columns
可能不是数组。它可能像Array
一样嘎嘎叫,但事实并非如此。
@query.inline_columns.delete_at(0)
本应返回一些内容。它回来了,你有没有?
最后,但并非最不重要的是,我可能做出的最可能的猜测:
@query.inline_columns
获取内容,将其转换为数组并在返回之前复制它。你能做到这一点的唯一方法是:
some_columns = @query.inline_columns
some_columns.delete_at(0)
some_columns
答案 1 :(得分:0)
这是我现在的解决方案:
<% if @project.id == 1 %>
<% @qcols = query.inline_columns.reject{ |col| col.name.to_s == 'id' } %>
<% else %>
<% @qcols = query.inline_columns.each %>
<% end %>
所以我利用了拒绝方法。然后我使用@qcols。
代表OP发表。