Ruby on rails 给定模型枚举,如何创建单选按钮组

Ruby on rails 给定模型枚举,如何创建单选按钮组,ruby-on-rails,Ruby On Rails,我有一个这样的模型: class User < ActiveRecord::Base enum :status [:banned, :registered, :trial, :pending] end class用户

我有一个这样的模型:

class User < ActiveRecord::Base
  enum :status [:banned, :registered, :trial, :pending]
end
class用户
在我的编辑页面上,我想显示4个单选按钮的列表,并预选当前为用户设置的单选按钮


如何实现这一点?

当您使用
enum
时,Rails使用复数属性名创建一个类方法。该方法返回已定义字符串的
键值对以及它们映射到的整数。所以,你可以这样做:

<% User.status.keys.each do |status| %>
  <%= f.radio_button :status, status %>
  <%= f.label status.to_sym %>
<% end %>



您可以使用
用户状态。每个_键
,它比
键快。每个
。此外,是否需要将状态转换为符号<代码>f.标签状态。至符号
。我认为这是多余的。使用
生成适当的“for”属性标签
<%= form_for @user do |f| %>
   <%= f.collection_radio_buttons :status, User.statuses, :first, :first %>
   <%= f.submit %>
<% end %>