Example #1
0
def pre_insert(fn=None, raw=False):
    """Filter to use before inserting the document to the database.

    Useful when you must to do some operation between the parsed data and the
    already inserted data.
    """
    return tag_processor('pre_insert', fn, raw)
Example #2
0
def pre_insert(fn=None, raw=False):
    """Filter to use before inserting the document to the database.

    Useful when you must to do some operation between the parsed data and the
    already inserted data.
    """
    return tag_processor("pre_insert", fn, raw)
Example #3
0
def async_validates_schema(fn=None,
                           pass_many=False,
                           pass_original=False,
                           skip_on_field_errors=False):
    return tag_processor(ASYNC_VALIDATES_SCHEMA,
                         fn,
                         pass_many,
                         pass_original=pass_original,
                         skip_on_field_errors=skip_on_field_errors)
Example #4
0
def pre_insert(fn=None, raw=False):
    """Filter to use before inserting the document to the database.

    Useful when you must to do some operation between the parsed data and the
    already inserted data.

    Example for Hidrocantabrico when the measures file doesn't have the CUPS
    code and have the internal contract code::

        @pre_insert
        def fix_name(self, data):
            backend = self.backend
            result = backend.get(self.backend.ps_collection, {
                'ref': data['name'], 'cod_distri': '0026'}
            )
            if result:
                data['name'] = result[0]['name']
            return data
    """
    return tag_processor('pre_insert', fn, raw)
Example #5
0
def async_post_load(fn=None, pass_many=False, pass_original=False):
    return tag_processor(ASYNC_POST_LOAD,
                         fn,
                         pass_many,
                         pass_original=pass_original)
Example #6
0
def async_pre_load(fn=None, pass_many=False):
    return tag_processor(ASYNC_PRE_LOAD, fn, pass_many)
Example #7
0
def async_post_dump(fn=None, pass_many=False, pass_original=False):
    return tag_processor(ASYNC_POST_DUMP,
                         fn,
                         pass_many,
                         pass_original=pass_original)
Example #8
0
def async_pre_dump(fn=None, pass_many=False):
    return tag_processor(ASYNC_PRE_DUMP, fn, pass_many)
Example #9
0
def async_validates(field_name):
    return tag_processor(ASYNC_VALIDATES, None, False, field_name=field_name)
 def wrapped(fn):
     name = fn.__name__
     fn = tag_processor(tag, fn, pass_many, pass_original=pass_original)
     setattr(cls, name, fn)
     cls.__processors__[(tag, pass_many)].append(name)
     return fn
Example #11
0
 def wrapped(fn):
     name = fn.__name__
     fn = tag_processor(tag, fn, pass_many, pass_original=pass_original)
     setattr(cls, name, fn)
     cls.__processors__[(tag, pass_many)].append(name)
     return fn