Example #1
0
 def render(self, context):
     """Render node"""
     try:
         tfield = format_field_name(self.field, language=self.lang)
         return getattr(context[self.object], tfield)
     except:
         return ''
Example #2
0
def QT(field_lookup, value):
    lookup_pos = -1
    for lookup in QUERY_TERMS.keys():
        ltemp = field_lookup.rfind(lookup)
        if ltemp != -1:
            lookup_pos = ltemp
            break
    # we have a lookup
    if lookup_pos != -1:
        field_ = field_lookup[:lookup_pos-3]
        lookup = field_lookup[lookup_pos-3:]
    else:
        field_ = field_lookup
        lookup = ''
    field_pos = field_.rfind('__')
    # we don't have a relationship
    if field_pos == -1:
        field = field_
    else:
        field = field_[field_.rfind('__')+2:]
    relationship = field_[:field_.rfind(field)]
    field = format_field_name(field)
    q = relationship + field + lookup
    kwargs = {str(q): value}
    return Q(**kwargs)
Example #3
0
 def lall(self, *fields):
     if not fields:
         fields = self.fields
     qstring = ''
     for field in fields:
         field_name = helpers.format_field_name(field)
         qstring += 'Q(%s="") | ' % field_name
     qstring = qstring[:-2]
     q = eval(qstring)
     return self.get_query_set().exclude(q)
Example #4
0
 def lall(self, *fields):
     """Similar to cls.all() but with a lang filter"""
     if not fields:
         fields = self.fields
     qlist = []
     for field in fields:
         field_name = helpers.format_field_name(field)
         qlist.append(Q(**{field_name: ''}))
     if qlist:
         return self.get_query_set().exclude(reduce(operator.or_, qlist))
     else:
         return self.get_query_set()
Example #5
0
def T(normalized_field_name):
    return format_field_name(normalized_field_name)
Example #6
0
def T(normalized_field_name):
    """Django like wrapper for language fields"""
    return format_field_name(normalized_field_name)
Example #7
0
 def wrap(cls):
     for normalized_field_name in fields:
         field_name = helpers.format_field_name(normalized_field_name, field_format)
         __set_descriptor(cls, normalized_field_name, field_format)
     return cls