Given fields, a connection and the query parameters, build a query and return the query String,
and Start or MaxRows values (depending on whether the driver supports LIMIT and OFFSET)
and the complete List of QueryParams based on any synthetic query parameters calculated during the
query creation.

Given fields, a connection and the query parameters, build a query and return the query String,
and Start or MaxRows values (depending on whether the driver supports LIMIT and OFFSET)
and the complete List of QueryParams based on any synthetic query parameters calculated during the
query creation.

fields

-- a Seq of the fields to be selected

conn

-- the SuperConnection to be used for calculating the query

by

-- the varg of QueryParams

returns

a Tuple of the Query String, Start (offset), MaxRows (limit), and the list of all query parameters
including and synthetic query parameters

This function converts an element into the appropriate
XHTML format for displaying across a line
formatted block.

This function converts an element into the appropriate
XHTML format for displaying across a line
formatted block. The default is <td> for use
in XHTML tables. If you change this function, the change
will be used for this MetaMapper unless you override the
doHtmlLine method.

This function converts a header name into the appropriate
XHTML format for displaying across the headers of a
formatted block.

This function converts a header name into the appropriate
XHTML format for displaying across the headers of a
formatted block. The default is <th> for use
in XHTML tables. If you change this function, the change
will be used for this MetaMapper unless you override the
htmlHeades method

This method will encode the instance as JSON. It may reveal
data in fields that might otherwise be proprietary. It should
be used with caution and only exposed as a public method
after a security review.

Given a function that takes a mapper field and returns a NodeSeq
for the field, return, for this mapper instance, a set of CSS
selector transforms that will transform a form for those fields
into a fully-bound form that will interact with this instance.

Given a function that takes a mapper field and returns a NodeSeq
for the field, return, for this mapper instance, a set of CSS
selector transforms that will transform a form for those fields
into a fully-bound form that will interact with this instance.

This function converts a name and form for a given field in the
model to XHTML for presentation in the browser.

This function converts a name and form for a given field in the
model to XHTML for presentation in the browser. By
default, a table row ( <tr> ) is presented, but
you can change the function to display something else.

Lame attempt at automatically getting an object from the HTTP parameters.

Lame attempt at automatically getting an object from the HTTP parameters.
BROKEN! DO NOT USE! Only here so that existing sub-classes KeyedMetaMapper
don't have to implement new methods when I commit the CRUD snippets code.

This method will update the instance from JSON. It allows for
attacks from untrusted JSON as it bypasses normal security. By
default, the method is protected. You can write a proxy method
to expose the functionality.