第一个radio_button没有显示在Rails 5中

时间:2017-01-30 11:51:56

标签: enums devise radio-button ruby-on-rails-5

我在Devise中使用Rails 5并将Enum/roles(消费者,设计师)添加到User model。在创建新注册时,我希望用户选择role,我为每个radio_button添加了value/role

<div id="user_role"
    <% User.roles.keys.each do |role| %>
      <%= f.radio_button :role, role %>
      <%= f.label role.to_sym %>
    <% end %>
</div>

它显示了两个角色的labels,但只显示了最后一个角色的radio_button。以下是User model中定义的角色:

enum role: [:consumer, :designer]

关于我在这里做错了什么想法?

1 个答案:

答案 0 :(得分:1)

尝试这种方式

 <div id="user_role">
    <% User.roles.keys.each do |role| %>
      <%= f.radio_button :role, role %>
      <%= f.label role.to_sym %>
    <% end %>
  </div>
              or

  <div id="user_role">
   <% User.roles.each do |role| %>
    <%= f.radio_button :role, role %>
    <%= f.label role[0] %>
   <% end %>
 </div>

它在我当地的工作正常。我希望它能为你提供帮助。