Credit goes to @jcern for pointing this out:
Record has method def setFilter: List[(ValueType) ⇒ ValueType]
which is very similar to def setFilter: List[(FieldType) ⇒ FieldType]
.
It is used the same way, i.e. filter will be applied when setting or querying values. Here is a quick example:
class Tag extends MongoRecord[Tag] with ObjectIdPk[Tag] {
...
object name extends StringField(this, 32) {
override def setFilter = trim _ :: toLower _ :: super.setFilter
}
...
}
Tag.createRecord.name("UPPER")
// lowercases tag name:
//res1: Tag = class Tag={name=upper, _id=521bb306e4b04eacd74dd217}