link_to不同的模型activeadmin rails

时间:2016-01-09 13:15:35

标签: ruby-on-rails ruby activeadmin ruby-on-rails-4.1

我有一个带序列化列'数据'的模型,其中包含如下值: -

<div class="menu-wrap">
    <nav class="menu">
        <ul class="clearfix">
            <li class="twitter"><a href="https://twitter.com/correocaminos">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a></li>
            <li class="aboutus">
                <a href="/aboutus">SOBRE NOSOTROS&nbsp;<span class="arrow">&#9660;</span></a>
 
                <ul class="sub-menu">
                    <li><a href="/asociacioncultural">ASOCIACIÓN CULTURAL</a></li>
                    <li><a href="/equipo">EQUIPO</a></li>
                </ul>
            </li>
            <li><a href="/revista">LA REVISTA</a></li>
            <li><a href="/unete">ÚNETE</a></li>
            <li class="issuu"><a href="https://issuu.com/correocacultural">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a></li>
        </ul>
    </nav>
</div>

在ActiveAdmin show中,我想使用上面数据中保存的ID创建指向另一个名为Example的模型的链接。 我尝试了以下方法,但它不起作用: -

data: {:samplekey=>[40, 50]}

输出就像这样(没有任何链接): -

    row :data do |d|
        if !d.data.nil?
            d.data[:samplekey].each do |k|
                link_to("#{k}", admin_example_path(Example.find(k)))
            end
        end
    end

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

以下是最终实施工作。

我在模型中使用一个方法来返回一个对象列表:

def get_examples
  result = Array.new
  if !self.data.nil?
    self.data[:samplekey].each do |x|
      result << Example.find(x)
    end
  end
  result
end

在管理员控制器显示操作中我做了这个: -

    row :example_data do |x|
        x.get_examples.map{|e| link_to("#{e.id}", admin_example_path(e))}.join("<br/>").html_safe
    end