class Marten::Schema::Field::String

Overview

Represents a string schema field.

Direct Known Subclasses

Defined in:

marten/schema/field.cr
marten/schema/field/string.cr

Constructors

Instance Method Summary

Instance methods inherited from class Marten::Schema::Field::Base

deserialize(value) deserialize, empty_value?(value) : ::Bool empty_value?, id : String id, required? : Bool required?, serialize(value) : ::String | Nil serialize, validate(schema, value) validate

Constructor methods inherited from class Marten::Schema::Field::Base

new(id : ::String, required : ::Bool = true) new

Constructor Detail

def self.new(id : ::String, required : ::Bool = true, max_size : Int32 | Nil = nil, min_size : Int32 | Nil = nil, strip : ::Bool = true) #

[View source]

Instance Method Detail

def deserialize(value) : ::String | Nil #
Description copied from class Marten::Schema::Field::Base

Deserializes a raw field value to the corresponding field value.


[View source]
def max_size : Int32? #

Returns the maximum string size allowed.


[View source]
def min_size : Int32? #

Returns the minimum string size allowed.


[View source]
def serialize(value) : ::String | Nil #
Description copied from class Marten::Schema::Field::Base

Serializes a field value.


[View source]
def strip? : Bool #

Returns true if the string value should be stripped of leading and trailing whitespaces.


[View source]
def validate(schema, value) #
Description copied from class Marten::Schema::Field::Base

Runs custom validation logic for a specific schema field and schema object.

This method should be overriden for each field implementation that requires custom validation logic.


[View source]