0
여러 가지 맞춤형 ActiveModel 검사기를 사용하는 모델이 있습니다. rails_admin을 설치하는 동안 다음 오류가 발생합니다.rails_admin, mongoid 및 맞춤형 ActiveModel 검사기 관련 문제
.rvm/gems/ruby-1.9.2-head/bundler/gems/rails_admin-0d80b74a60e7/lib/rails_admin/adapters/mongoid.rb:340:in `block in length_validation_lookup': undefined method `attributes' for #<MyCustomValidator:0x00000105c5aca0 @options={}> (NoMethodError)
from .rvm/gems/ruby-1.9.2-head/bundler/gems/rails_admin-0d80b74a60e7/lib/rails_admin/adapters/mongoid.rb:339:in `select'
from .rvm/gems/ruby-1.9.2-head/bundler/gems/rails_admin-0d80b74a60e7/lib/rails_admin/adapters/mongoid.rb:339:in `length_validation_lookup'
from .rvm/gems/ruby-1.9.2-head/bundler/gems/rails_admin-0d80b74a60e7/lib/rails_admin/adapters/mongoid.rb:98:in `block in properties'
모델에서 유효성 검사기 호출을 주석 처리하면 오류가 사라집니다. rails_admin 코드 기반을 해킹하는 것 이외에 문제의 해결책이 있는지 궁금합니다. 나는 하늘의 배열이 문제를 해결 반환하는 '속성'방법을 추가, 주석에서 언급 한 바와 같이
다음은 골격 코드 (단지 관련 부분)
class MyModel
include Mongoid::Document
....
validates_with MyValidator
end
class MyValidator < ActiveModel::Validator
def validate(record)
end
end
입니다.
아마 당신의 코드를 게시하는 것으로 시작 하시겠습니까? –
저는 유효성 검사기에 빈 배열을 반환하는 '특성'메서드를 추가하여 일시적으로 문제를 극복했습니다. – nvn