在rails_admin的列表视图中更改'title'属性

时间:2016-01-12 12:39:40

标签: ruby-on-rails rails-admin

我使用rails_admin来管理路由器和端口的数据库。在端口索引页面中,我想将title标记中的<td>更改为节点IP地址。

我现在在rails_admin中有这段代码:

<td class="node_field belongs_to_association_type" title="cisco-node-pos-156">
  <a class="pjax" href="/admin/node/85">
    cisco-node-pos-156
  </a>
</td>

我想:

<td class="node_field belongs_to_association_type" title="192.168.1.1">
  <a class="pjax" href="/admin/node/85">
    cisco-node-pos-156
  </a>
</td>

在这种情况下node.name = "cisco-node-pos-156" node.ip = "192.168.1.1"

插图: enter image description here

我从rails_admin源代码和此行中复制了index.html.haml

%td{class: "#{property.css_class} #{property.type_css_class}", title: strip_tags(value.to_s)}= value

我将strip_tags(value.to_s)更改为strip_tags(value.ip.to_s),但错误消息为

  

未定义方法`ip'表示“0”:字符串

这里“0”是端口名称。

1 个答案:

答案 0 :(得分:0)

我会给你的模型一个自定义方法:

# in your model
def title_ip
  # format stuff here
end

# in rails_admin config
list do
  include_all_fields
  field :title_ip
end

或者你可以在RA配置

field :title do
  formatted_value { bindings[:object].format_stuff_here }
end

我不会乱用HAML文件。