本文整理汇总了Python中r2.lib.translation.Translator类的典型用法代码示例。如果您正苦于以下问题:Python Translator类的具体用法?Python Translator怎么用?Python Translator使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Translator类的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: POST_edit
def POST_edit(self, lang, post, try_trans):
if lang and not Translator.exists(lang):
return self.redirect("/admin/i18n")
if lang:
tr = get_translator(locale=lang)
else:
tr = TranslatorTemplate()
enabled = set()
for k, val in request.post.iteritems():
if k.startswith("trans_"):
k = k.split("_")
val = val.replace("\n", " ").replace("\r", " ")
# check if this is a translation string
if k[1:] and tr.get(k[1]):
tr.set(k[1], val, indx=int(k[2] if k[2:] else -1))
# check if this is an admin editing the source/comment lines
elif c.user_is_admin and tr.sources.get(k[1]):
source = tr.sources.get(k[1])
tr.source_trans[source] = val
elif c.user_is_admin and k.startswith("enabled_"):
k = k.split("_")
enabled.add(k[1])
# update the enabled state of the buttons
if c.user_is_admin and enabled:
strings = set(tr.string_dict.keys())
disabled = strings - enabled
for s in strings:
tr.set_enabled(s, True)
for s in disabled:
tr.set_enabled(s, False)
if request.post.get("nplurals"):
try:
tr.plural_names = [request.post.get("pluralform_%d" % i) for i in xrange(tr.nplurals)]
tr.nplurals = int(request.post.get("nplurals"))
except ValueError:
pass
if request.post.get("langname"):
tr.name = request.post["langname"]
if request.post.get("enlangname"):
tr.en_name = request.post["enlangname"]
tr.save(compile=bool(try_trans))
if try_trans:
tran_keys = _translations.keys()
for key in tran_keys:
if key.endswith(tr._out_file("mo")):
del _translations[key]
return self.redirect("http://%s/?lang=%s" % (g.domain, lang))
whereto = request.post.get("bttn_num", "")
if whereto:
whereto = "bttn_num_%s" % whereto
return self.redirect("/admin/i18n/edit/%s#%s" % (lang or "", whereto))
return res
开发者ID:xolar,项目名称:proddit,代码行数:60,代码来源:i18n.py
示例2: GET_edit
def GET_edit(self, lang):
if not lang and c.user_is_admin:
content = Wrapped(TranslatorTemplate())
elif Translator.exists(lang):
content = Wrapped(get_translator(locale=lang))
else:
content = UnfoundPage()
res = AdminPage(content=content, title="translate proddit", show_sidebar=False).render()
return res
开发者ID:xolar,项目名称:proddit,代码行数:9,代码来源:i18n.py
示例3: POST_adduser
def POST_adduser(self, lang, a):
from r2.lib.db import queries
if a and Translator.exists(lang):
tr = get_translator(locale = lang)
tr.author.add(a.name)
tr.save()
# send the user a message
body = Translator_Message(lang, a).render("html")
subject = "Thanks for offering to help translate!"
m, inbox_rel = Message._new(c.user, a, subject, body, request.ip)
queries.new_message(m, inbox_rel)
return self.redirect("/admin/i18n")
开发者ID:constantAmateur,项目名称:sciteit,代码行数:14,代码来源:i18n.py
示例4: run
def run(self, param):
from r2.lib.translation import Translator
if Translator.exists(param):
return Translator(locale = param)
开发者ID:jaycobcoleman,项目名称:reddit,代码行数:4,代码来源:validator.py
示例5: POST_new
def POST_new(self, lang):
if lang and not Translator.exists(lang):
tr = get_translator(locale = lang)
tr.save()
return self.redirect("/admin/i18n")
开发者ID:constantAmateur,项目名称:sciteit,代码行数:5,代码来源:i18n.py
示例6: run
def run(self, lang):
if (not c.user_is_admin and
(not c.user_is_loggedin or not lang or
c.user.name not in Translator.get_author(lang))):
abort(404, 'page not found')
开发者ID:constantAmateur,项目名称:sciteit,代码行数:5,代码来源:i18n.py
示例7: POST_enable_lang
def POST_enable_lang(self, res, lang):
if lang and Translator.exists(lang):
tr = Translator(locale = lang)
tr._is_enabled = True
开发者ID:cmak,项目名称:reddit,代码行数:4,代码来源:api.py
示例8: POST_deltranslator
def POST_deltranslator(self, res, l):
lang, a = l.split('_')
if a and Translator.exists(lang):
tr = Translator(locale = lang)
tr.author.remove(a)
tr.save()
开发者ID:cmak,项目名称:reddit,代码行数:6,代码来源:api.py
示例9: POST_adduser
def POST_adduser(self, lang, a):
if a and Translator.exists(lang):
tr = get_translator(locale = lang)
tr.author.add(a.name)
tr.save()
return self.redirect("/admin/i18n")
开发者ID:kevinrose,项目名称:diggit,代码行数:6,代码来源:i18n.py
注:本文中的r2.lib.translation.Translator类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论