Version 1, last updated by paul.dale at 19 Jan 19:18 UTC

Record is one of two persistence layers included with Lift (the other being Mapper). Unlike Mapper, Record does not attempt to be a complete ORM.

Record is a thin layer over a persistence mechanism (potentially any) for persisting objects.

Due to the fact that all of the many persistence mechanisms have wildly different capabilities some specific record implementations may have different capabilities than others.

See the specific implementations ( CouchDB, MongoDB, Squeryl ) for more information.

The general contract that you get with all records is that a record

  • can be created
  • can be validated with validate
  • can be presented as XHtml, Json, or as a Form.
  • will contain fields which can be listed with allFields.
  • can be created directly from a Request containing params with names that match the fields on a Record ( see fromReq ).

Fields implement Bindable, which means that they can be used directly with bind() or with CSS Transforms.

Fields provide many useful functions for displaying, validating, or modifying values on a record.

The fields are the same fields used by Mapper and can be used directly with LiftScreen or Wizards.