Gem'注释'不使用枚举

时间:2017-04-16 12:06:31

标签: ruby-on-rails ruby enums sti annotate

我在'用户'上使用STI表与模型。用户模型有一个枚举性别'价值观[:男性,女性,:其他]。

#app/models/users.rb
class User < ApplicationRecord

  enum gender: {male: 0, female: 1, other: 3}

end

#app/models/employee.rb
class Employee < User

end

上次成功注释结果,如果我从User类中删除枚举也可以。

# == Schema Information
#
# Table name: users
#
#  id                     :integer          not null, primary key
#  email                  :string(100)      default(""), not null
#  encrypted_password     :string           default(""), not null
#  reset_password_token   :string
#  reset_password_sent_at :datetime
#  remember_created_at    :datetime
#  sign_in_count          :integer          default("0"), not null
#  current_sign_in_at     :datetime
#  last_sign_in_at        :datetime
#  current_sign_in_ip     :inet
#  last_sign_in_ip        :inet
#  created_at             :datetime         not null
#  updated_at             :datetime         not null
#  type                   :string
#  first_name             :string(100)      default(""), not null
#  last_name              :string           default("")
#

运行注释会抛出以下错误:

无法注释user.rb:您尝试定义名为&#34;性别&#34;的枚举。在模型&#34; User&#34;上,但是这将生成一个实例方法&#34; male?&#34;,它已经由另一个枚举定义。

只有enum中的性别。

使用:ruby(2.4.0),rails(5.0.2),annotate(2.6.5)

0 个答案:

没有答案