0
처음으로 DataMapper Enum 형식을 사용하고 열거 형의 첫 번째 값이 1로 변환됨을 확인했습니다. 다른 응용 프로그램의 다른 ORM 계층과이 데이터베이스를 읽으면 이전 버전과의 호환성을 유지하기 위해이 값을 0으로 설정해야합니다.DataMapper 열거 형을 0으로 만들 수있는 방법이 있습니까?
처음으로 DataMapper Enum 형식을 사용하고 열거 형의 첫 번째 값이 1로 변환됨을 확인했습니다. 다른 응용 프로그램의 다른 ORM 계층과이 데이터베이스를 읽으면 이전 버전과의 호환성을 유지하기 위해이 값을 0으로 설정해야합니다.DataMapper 열거 형을 0으로 만들 수있는 방법이 있습니까?
dm-type에서 monkey-patch enum.rb를 지원해야합니다.
module DataMapper
class Property
class Enum < Object
def initialize(model, name, options = {})
@flag_map = {}
flags = options.fetch(:flags, self.class.flags)
flags.each_with_index do |flag, i|
@flag_map[i] = flag
end
if self.class.accepted_options.include?(:set) && !options.include?(:set)
options[:set] = @flag_map.values_at(*@flag_map.keys.sort)
end
super
end # end initialize
end # end class Enum
end # end class Property
end # end module DataMapper
: 당신은
@flag_map[i+1]
이
@flag_map[i]
로 대체 약간 수정 된 복사본으로
initialize
방법을 교체해야합니다