method
new

v5.0.0.1 -
Show latest stable
-
0 notes -
Class: ActiveModel::Validations::LengthValidator
- 1.0.0
- 1.1.6
- 1.2.6
- 2.0.3
- 2.1.0
- 2.2.1
- 2.3.8
- 3.0.0 (0)
- 3.0.9 (0)
- 3.1.0 (0)
- 3.2.1 (0)
- 3.2.8 (0)
- 3.2.13 (0)
- 4.0.2 (0)
- 4.1.8 (0)
- 4.2.1 (0)
- 4.2.7 (0)
- 4.2.9 (0)
- 5.0.0.1 (0)
- 5.1.7 (0)
- 5.2.3 (0)
- 6.0.0 (0)
- 6.1.3.1 (0)
- 6.1.7.7 (0)
- 7.0.0 (0)
- 7.1.3.2 (0)
- 7.1.3.4 (0)
- What's this?
new(options)
public
Hide source
# File activemodel/lib/active_model/validations/length.rb, line 11 def initialize(options) if range = (options.delete(:in) || options.delete(:within)) raise ArgumentError, ":in and :within must be a Range" unless range.is_a?(Range) options[:minimum], options[:maximum] = range.min, range.max end if options[:allow_blank] == false && options[:minimum].nil? && options[:is].nil? options[:minimum] = 1 end if options[:tokenizer] ActiveSupport::Deprecation.warn( The `:tokenizer` option is deprecated, and will be removed in Rails 5.1. You can achieve the same functionality by defining an instance method with the value that you want to validate the length of. For example, validates_length_of :essay, minimum: 100, tokenizer: ->(str) { str.scan(/\w+/) } should be written as validates_length_of :words_in_essay, minimum: 100 private def words_in_essay essay.scan(/\w+/) end.strip_heredoc) end super end