从模型到链接获取值

时间:2012-10-15 13:30:18

标签: ruby-on-rails ruby-on-rails-3.2

这些是我现在用来过滤某些广告系列的链接:

            <ul>
                <li><%= link_to "Owner", :role_id => "1" %></li>
                <li><%= link_to "Manager", :role_id => "2" %></li>
                <li><%= link_to "Agent", :role_id => "3" %></li>
                <li><%= link_to "Participant", :role_id => "4" %></li>
            </ul>

角色ID在campaign_membership.rb

中指定
ROLE = {'owner' => 1, 'manager' => 2, 'agent' => 3, 'participant' => 4}

我构建链接的方式可能不是正确的方法,它们是硬编码的,我如何以另一种更合适的方式分配这个role_id?

类似于使用

CampaignMembership::ROLE::owner
CampaignMembership::ROLE::manager
CampaignMembership::ROLE::agent
CampaignMembership::ROLE::participant
链接内的

谢谢。

细节:

2个表格userscampaigns由广告系列成员资格campaign_membership链接,我有user_idcampaign_id和{ {1}}

1 个答案:

答案 0 :(得分:2)

# in your config
ROLE = {'owner' => 1, 'manager' => 2, 'agent' => 3, 'participant' => 4}

# in your view:
<ul>
  <% ROLE.each do |k,id| %>
  <li><%= link_to t("roles."+k), :role_id => id %></li>
  <% end %>
</ul>

# in your config/locales/en.yml
en:
  roles:
    owner: Owner
    manager: Manager