def _ugettext__(str): """ _ugettext_,该函数先根据字符串的格式检查是否数据项,若是则进行数据项替换, 否则,再检查字符串资源翻译表,若还是没有的话,调用原来的翻译函数. 数据项格式为: ~应用名.模型名.字段名.需翻译的字符串 """ if str.find("~") == 0: s = str[1:].split(".", 3) # print "_ugettext data", s try: model = models.get_model(s[0], s[1]) str = DataTranslation.get_field_display(model, s[2], s[3]) if str and not (str == s[3]): return str except: pass else: try: return translation.old_ugettext(str) except: return str # elif False: s = str # print "_ugettext resource", s try: str = StrResource.get_text(s) if str and not (str == s): return str except Exception, e: # print e pass
def _ugettext__(str): ''' _ugettext_,该函数先根据字符串的格式检查是否数据项,若是则进行数据项替换, 否则,再检查字符串资源翻译表,若还是没有的话,调用原来的翻译函数. 数据项格式为: ~应用名.模型名.字段名.需翻译的字符串 ''' if str.find('~') == 0: s = str[1:].split(".", 3) #print "_ugettext data", s try: model = models.get_model(s[0], s[1]) str = DataTranslation.get_field_display(model, s[2], s[3]) if str and not (str == s[3]): return str except: pass else: try: return translation.old_ugettext(str) except: return str # elif False: s = str #print "_ugettext resource", s try: str = StrResource.get_text(s) if str and not (str == s): return str except Exception, e: #print e pass
try: return translation.old_ugettext(str) except: return str # elif False: s = str # print "_ugettext resource", s try: str = StrResource.get_text(s) if str and not (str == s): return str except Exception, e: # print e pass try: res = translation.old_ugettext(str) updateResTrans(str, res) except UnicodeDecodeError: return str return res def _ugettext_(str): """ cached _ugettext__ function """ # return translation.ugettext(str) # language=translation.get_language() # key=u'%s:i18n:%s:%s' % (CACHE_PREFIX, language, str.replace(' ', '_')) # s=cache.get(key) # if s:
except: return str # elif False: s = str #print "_ugettext resource", s try: str = StrResource.get_text(s) if str and not (str == s): return str except Exception, e: #print e pass try: res = translation.old_ugettext(str) updateResTrans(str, res) except UnicodeDecodeError: return str return res def _ugettext_(str): """ cached _ugettext__ function """ # return translation.ugettext(str) # language=translation.get_language() # key=u'%s:i18n:%s:%s' % (CACHE_PREFIX, language, str.replace(' ', '_')) # s=cache.get(key) # if s: