Docs for SQLFORM.accepts.im_class

[ Python Tutorial ] [ Python Libraries ] [ web2py epydoc ]

Description


<type 'type'> extends (<class 'gluon.html.FORM'>,)










































SQLFORM is used to map a table (and a current record) into an HTML form

given a SQLTable stored in db.table

generates an insert form::

SQLFORM(db.table)

generates an update form::

record=db.table[some_id]
SQLFORM(db.table, record)

generates an update with a delete button::

SQLFORM(db.table, record, deletable=True)

if record is an int::

record=db.table[record]

optional arguments:

:
param fields: a list of fields that should be placed in the form,
default is all.
:
param labels: a dictionary with labels for each field, keys are the field
names.
:
param col3: a dictionary with content for an optional third column
(right of each field). keys are field names.
:
param linkto: the URL of a controller/function to access referencedby
records
see controller appadmin.py for examples
:param upload: the URL of a controller/function to download an uploaded file
see controller appadmin.py for examples

any named optional attribute is passed to the <form> tag
for example _class, _id, _style, _action, _method, etc.



Attributes


SQLFORM.accepts.im_class.FIELDKEY_DELETE_RECORD <type 'str'> belongs to class <type 'str'>
str(object) -> string Return a nice string representation of the object. If the argument is a string, the return value is the same object.

SQLFORM.accepts.im_class.FIELDNAME_REQUEST_DELETE <type 'str'> belongs to class <type 'str'>
str(object) -> string Return a nice string representation of the object. If the argument is a string, the return value is the same object.

SQLFORM.accepts.im_class.ID_LABEL_SUFFIX <type 'str'> belongs to class <type 'str'>
str(object) -> string Return a nice string representation of the object. If the argument is a string, the return value is the same object.

SQLFORM.accepts.im_class.ID_ROW_SUFFIX <type 'str'> belongs to class <type 'str'>
str(object) -> string Return a nice string representation of the object. If the argument is a string, the return value is the same object.

SQLFORM.accepts.im_class.__class__ <type 'type'> extends (<type 'object'>,) belongs to class <type 'type'>
type(object) -> the object's type type(name, bases, dict) -> a new type

SQLFORM.accepts.im_class.__delattr__ <type 'wrapper_descriptor'> belongs to class <type 'wrapper_descriptor'>
x.__delattr__('name') <==> del x.name

SQLFORM.accepts.im_class.__delitem__ <type 'instancemethod'> belongs to class <type 'instancemethod'>
deletes attribute with name 'i' or component #i. :param i: index if i is a string: the name of the attribute otherwise references to number of the component

SQLFORM.accepts.im_class.__dict__ <type 'dictproxy'> belongs to class <type 'dictproxy'>

SQLFORM.accepts.im_class.__doc__ <type 'str'> belongs to class <type 'str'>
str(object) -> string Return a nice string representation of the object. If the argument is a string, the return value is the same object.

SQLFORM.accepts.im_class.__getattribute__ <type 'wrapper_descriptor'> belongs to class <type 'wrapper_descriptor'>
x.__getattribute__('name') <==> x.name

SQLFORM.accepts.im_class.__getitem__ <type 'instancemethod'> belongs to class <type 'instancemethod'>
gets attribute with name 'i' or component #i. If attribute 'i' is not found returns None :param i: index if i is a string: the name of the attribute otherwise references to number of the component

SQLFORM.accepts.im_class.__hash__ <type 'wrapper_descriptor'> belongs to class <type 'wrapper_descriptor'>
x.__hash__() <==> hash(x)

SQLFORM.accepts.im_class.__init__ <type 'instancemethod'> belongs to class <type 'instancemethod'>
SQLFORM(db.table, record=None, fields=['name'], labels={'name': 'Your name'}, linkto=URL(f='table/db/')

SQLFORM.accepts.im_class.__len__ <type 'instancemethod'> belongs to class <type 'instancemethod'>
returns the number of included components

SQLFORM.accepts.im_class.__module__ <type 'str'> belongs to class <type 'str'>
str(object) -> string Return a nice string representation of the object. If the argument is a string, the return value is the same object.

SQLFORM.accepts.im_class.__new__ <type 'builtin_function_or_method'> belongs to class <type 'builtin_function_or_method'>
T.__new__(S, ...) -> a new object with type S, a subtype of T

SQLFORM.accepts.im_class.__nonzero__ <type 'instancemethod'> belongs to class <type 'instancemethod'>
always return True

SQLFORM.accepts.im_class.__reduce__ <type 'method_descriptor'> belongs to class <type 'method_descriptor'>
helper for pickle

SQLFORM.accepts.im_class.__reduce_ex__ <type 'method_descriptor'> belongs to class <type 'method_descriptor'>
helper for pickle

SQLFORM.accepts.im_class.__repr__ <type 'wrapper_descriptor'> belongs to class <type 'wrapper_descriptor'>
x.__repr__() <==> repr(x)

SQLFORM.accepts.im_class.__setattr__ <type 'wrapper_descriptor'> belongs to class <type 'wrapper_descriptor'>
x.__setattr__('name', value) <==> x.name = value

SQLFORM.accepts.im_class.__setitem__ <type 'instancemethod'> belongs to class <type 'instancemethod'>
sets attribute with name 'i' or component #i. :param i: index if i is a string: the name of the attribute otherwise references to number of the component :param value: the new value

SQLFORM.accepts.im_class.__str__ <type 'instancemethod'> belongs to class <type 'instancemethod'>
str(COMPONENT) returns equals COMPONENT.xml()

SQLFORM.accepts.im_class.__weakref__ <type 'getset_descriptor'> belongs to class <type 'getset_descriptor'>
list of weak references to the object (if defined)

SQLFORM.accepts.im_class._fixup <type 'instancemethod'> belongs to class <type 'instancemethod'>
Handling of provided components. Nothing to fixup yet. May be overridden by subclasses, eg for wrapping some components in another component or blocking them.

SQLFORM.accepts.im_class._postprocessing <type 'instancemethod'> belongs to class <type 'instancemethod'>

SQLFORM.accepts.im_class._setnode <type 'instancemethod'> belongs to class <type 'instancemethod'>

SQLFORM.accepts.im_class._traverse <type 'instancemethod'> belongs to class <type 'instancemethod'>

SQLFORM.accepts.im_class._validate <type 'instancemethod'> belongs to class <type 'instancemethod'>
nothing to validate yet. May be overridden by subclasses

SQLFORM.accepts.im_class._wrap_components <type 'instancemethod'> belongs to class <type 'instancemethod'>
helper for _fixup. Checks if a component is in allowed_parents, otherwise wraps it in wrap_parent :param allowed_parents: (tuple) classes that the component should be an instance of :param wrap_parent: the class to wrap the component in, if needed :param wrap_lambda: lambda to use for wrapping, if needed

SQLFORM.accepts.im_class._xml <type 'instancemethod'> belongs to class <type 'instancemethod'>
helper for xml generation. Returns separately: - the component attributes - the generated xml of the inner components Component attributes start with an underscore ('_') and do not have a False or None value. The underscore is removed. A value of True is replaced with the attribute name. :returns: tuple: (attributes, components)

SQLFORM.accepts.im_class.accepts <type 'instancemethod'> belongs to class <type 'instancemethod'>
similar FORM.accepts but also does insert, update or delete in DAL. but if detect_record_change == True than: form.record_changed = False (record is properly validated/submitted) form.record_changed = True (record cannot be submitted because changed) elseif detect_record_change == False than: form.record_changed = None

SQLFORM.accepts.im_class.append <type 'instancemethod'> belongs to class <type 'instancemethod'>
list style appending of components >>> a=DIV() >>> a.append(SPAN('x')) >>> print a <div><span>x</span></div>

SQLFORM.accepts.im_class.build_query <type 'function'> belongs to class <type 'function'>

SQLFORM.accepts.im_class.createform <type 'instancemethod'> belongs to class <type 'instancemethod'>

SQLFORM.accepts.im_class.element <type 'instancemethod'> belongs to class <type 'instancemethod'>
find the first component that matches the supplied attribute dictionary, or None if nothing could be found Also the components of the components are searched.

SQLFORM.accepts.im_class.elements <type 'instancemethod'> belongs to class <type 'instancemethod'>
find all component that match the supplied attribute dictionary, or None if nothing could be found All components of the components are searched. >>> a = DIV(DIV(SPAN('x'),3,DIV(SPAN('y')))) >>> for c in a.elements('span',first_only=True): c[0]='z' >>> print a <div><div><span>z</span>3<div><span>y</span></div></div></div> >>> for c in a.elements('span'): c[0]='z' >>> print a <div><div><span>z</span>3<div><span>z</span></div></div></div> It also supports a syntax compatible with jQuery >>> a=TAG('<div><span><a id="1-1" u:v=$>hello</a></span><p class="this is a test">world</p></div>') >>> for e in a.elements('div a#1-1, p.is'): print e.flatten() hello world >>> for e in a.elements('#1-1'): print e.flatten() hello >>> a.elements('a[u:v=$]')[0].xml() '<a id="1-1" u:v="$">hello</a>' >>> a=FORM( INPUT(_type='text'), SELECT(range(1)), TEXTAREA() ) >>> for c in a.elements('input, select, textarea'): c['_disabled'] = 'disabled' >>> a.xml() '<form action="" enctype="multipart/form-data" method="post"><input disabled="disabled" type="text" /><select disabled="disabled"><option value="0">0</option></select><textarea cols="40" disabled="disabled" rows="10"></textarea></form>'

SQLFORM.accepts.im_class.factory <type 'function'> belongs to class <type 'function'>
generates a SQLFORM for the given fields. Internally will build a non-database based data model to hold the fields.

SQLFORM.accepts.im_class.flatten <type 'instancemethod'> belongs to class <type 'instancemethod'>
return the text stored by the DIV object rendered by the render function the render function must take text, tagname, and attributes render=None is equivalent to render=lambda text, tag, attr: text >>> markdown = lambda text,tag=None,attributes={}: {None: re.sub('\s+',' ',text), 'h1':'#'+text+'\n\n', 'p':text+'\n'}.get(tag,text) >>> a=TAG('<h1>Header</h1><p>this is a test</p>') >>> a.flatten(markdown) '#Header\n\nthis is a test\n'

SQLFORM.accepts.im_class.grid <type 'function'> belongs to class <type 'function'>

SQLFORM.accepts.im_class.hidden_fields <type 'instancemethod'> belongs to class <type 'instancemethod'>

SQLFORM.accepts.im_class.insert <type 'instancemethod'> belongs to class <type 'instancemethod'>
list style inserting of components >>> a=DIV() >>> a.insert(0,SPAN('x')) >>> print a <div><span>x</span></div>

SQLFORM.accepts.im_class.process <type 'instancemethod'> belongs to class <type 'instancemethod'>
Perform the .validate() method but returns the form Usage in controllers: # directly on return def action(): #some code here return dict(form=FORM(...).process(...)) You can use it with FORM, SQLFORM or FORM based plugins Examples: #response.flash messages def action(): form = SQLFORM(db.table).process(message_onsuccess='Sucess!') retutn dict(form=form) # callback function # callback receives True or False as first arg, and a list of args. def my_callback(status, msg): response.flash = "Success! "+msg if status else "Errors occured" # after argument can be 'flash' to response.flash messages # or a function name to use as callback or None to do nothing. def action(): return dict(form=SQLFORM(db.table).process(onsuccess=my_callback)

SQLFORM.accepts.im_class.regex_attr <type '_sre.SRE_Pattern'>
Compiled regular expression objects

SQLFORM.accepts.im_class.regex_class <type '_sre.SRE_Pattern'>
Compiled regular expression objects

SQLFORM.accepts.im_class.regex_id <type '_sre.SRE_Pattern'>
Compiled regular expression objects

SQLFORM.accepts.im_class.regex_tag <type '_sre.SRE_Pattern'>
Compiled regular expression objects

SQLFORM.accepts.im_class.search_menu <type 'function'> belongs to class <type 'function'>

SQLFORM.accepts.im_class.sibling <type 'instancemethod'> belongs to class <type 'instancemethod'>
find the first sibling component that match the supplied argument list and attribute dictionary, or None if nothing could be found

SQLFORM.accepts.im_class.siblings <type 'instancemethod'> belongs to class <type 'instancemethod'>
find all sibling components that match the supplied argument list and attribute dictionary, or None if nothing could be found

SQLFORM.accepts.im_class.smartgrid <type 'function'> belongs to class <type 'function'>
@auth.requires_login() def index(): db.define_table('person',Field('name'),format='%(name)s') db.define_table('dog', Field('name'),Field('owner',db.person),format='%(name)s') db.define_table('comment',Field('body'),Field('dog',db.dog)) if db(db.person).isempty(): from gluon.contrib.populate import populate populate(db.person,300) populate(db.dog,300) populate(db.comment,1000) db.commit() form=SQLFORM.smartgrid(db[request.args(0) or 'person']) #*** return dict(form=form) *** builds a complete interface to navigate all tables links to the request.args(0) table: pagination, search, view, edit, delete, children, parent, etc. constraints is a dict {'table',query} that limits which records can be accessible links is a dict like {'tablename':[lambda row: A(....), ...]} that will add buttons when table tablename is displayed linked_tables is a optional list of tablenames of tables to be linked

SQLFORM.accepts.im_class.tag <type 'str'> belongs to class <type 'str'>
str(object) -> string Return a nice string representation of the object. If the argument is a string, the return value is the same object.

SQLFORM.accepts.im_class.update <type 'instancemethod'> belongs to class <type 'instancemethod'>
dictionary like updating of the tag attributes

SQLFORM.accepts.im_class.validate <type 'instancemethod'> belongs to class <type 'instancemethod'>
This function validates the form, you can use it instead of directly form.accepts. Usage: In controller def action(): form=FORM(INPUT(_name="test", requires=IS_NOT_EMPTY())) form.validate() #you can pass some args here - see below return dict(form=form) This can receive a bunch of arguments onsuccess = 'flash' - will show message_onsuccess in response.flash None - will do nothing can be a function (lambda form: pass) onfailure = 'flash' - will show message_onfailure in response.flash None - will do nothing can be a function (lambda form: pass) message_onsuccess message_onfailure next = where to redirect in case of success any other kwargs will be passed for form.accepts(...)

SQLFORM.accepts.im_class.widgets <class 'gluon.storage.Storage'> belongs to class <class 'gluon.storage.Storage'>
A Storage object is like a dictionary except `obj.foo` can be used in addition to `obj['foo']`, and setting obj.foo = None deletes item foo. >>> o = Storage(a=1) >>> print o.a 1 >>> o['a'] 1 >>> o.a = 2 >>> print o['a'] 2 >>> del o.a >>> print o.a None

SQLFORM.accepts.im_class.xml <type 'instancemethod'> belongs to class <type 'instancemethod'>