首页 > 解决方案 > 使用枚举选择性别不起作用

问题描述

我将不胜感激任何帮助。我正在使用枚举来选择男性和女性之间的性别。但是不工作,是返回女性而不是男性,它看起来是空的。当我进入编辑部分时,它没有显示男性或女性被选中。

当我进入rails控制台并输入gender.enum时?它返回真或假。

在此处输入图像描述

那是我的客户模型

class Customer < ApplicationRecord
  enum gender: [:female, :male]
end

这就是我在 _form.html.erb 中的内容

    <%= radio_button_tag(:gender, "male") %>
    <%= label_tag(:gender_male,   "Male") %>
    <%= radio_button_tag(:gender, "female") %>
    <%= label_tag(:gender_female, "Female") %>

性别之前是布尔值,然后我将其更改为整数以使用枚举

class ChangeGenderData < ActiveRecord::Migration[5.2]
  def change
change_column :customers, :gender, :integer

  end
end

这是出现的图像

标签: ruby-on-rails

解决方案


我使用这段代码解决了这个问题。

<%= form.collection_radio_buttons :gender, Customer.genders, :first, :first %>

推荐阅读