当前位置: 首页 > 面试题库 >

Django中的ugettext和ugettext_lazy

伍昱
2023-03-14
问题内容

您能解释一下ugettextugettext_lazy的主要区别是什么。

当我尝试

return HttpResponse(ugettext_lazy("Hello"))

我什么都没看见,但是

return HttpResponse(ugettext("Hello"))

正在工作。

为什么?

谢谢。


问题答案:

ugettext用来加载一个字符串的解释现在。 ugettext_lazy返回一个最终可以转换为字符串的对象。如果在ugettext_lazy设置正确的语言环境之前对呼叫进行了评估,则需要此设置。

ugettext_lazy可以在使用Unicode对象的地方使用。仔细检查您的HTML输出,看起来可能像这样:

<django.utils.functional...>

浏览器将其忽略为无法识别的标签

在这种情况下,您不需要延迟翻译,因为您将立即使用字符串。如果您出于某些原因确实想要继续使用ugettext_lazy,请尝试以下操作:

return HttpResponse(ugettext_lazy("Hello").encode('utf-8'))


 类似资料:
  • 问题内容: 给出以下代码: 根据我对Django 1.6中事务的理解,如果do_stuff抛出异常(例如IntegrityError),那么事务将被正确回滚。但是由于Django本身正在调用视图,所以没有什么可以阻止IntegrityError上升调用堆栈并导致HTTP 500错误的吗?让我们假设这不是我们想要的,因为我们想要优雅地处理错误,但仍然可以获得回滚功能。 因此,我想显而易见的想法是好的

  • 提到 Django 和 Flask,Tornado 开发者印象最深的可能就要属这个视图函数了,使用简单但是难以扩展, 尤其这个 if request.method == 'GET' 着实不够优雅,引起使用起来非常受限。 这样一个明显的缺陷,不可能不被官方注意到,两者也确实提供了更强大的的视图类。 Django Django 1.8 的文档 中 提供了这样的示例: # some_app/views.

  • 问题内容: 除了的ORM 之外,还有其他人使用过吗? 我想将Django的ORM用于对象操作,将SQLalchemy用于复杂的查询(例如那些需要左外部联接的查询)。 可能吗? 注意:我知道,但是该项目似乎尚未准备就绪。 问题答案: 我会怎么做 在Django orm中定义架构,让它通过syncdb编写数据库。你将获得管理界面。 在view1中,你需要一个复杂的联接

  • 我被推特登录所困扰。现在我意识到,这是一个分为几步的事情(与OAuth2相比相当愚蠢): > 向/request\u令牌endpoint发出POST请求,以获取初始令牌 使用(1)中的令牌参数将用户重定向到 /authenticate以获取另一个令牌 使用(2)中的令牌向/访问令牌发出另一个POST请求,并最终获得所需的令牌。 现在我有点纠结于(1):twitter API总是返回错误215,错误

  • 我想在我的django项目中使用fullcalendar jquery插件。我有一个入门模型 它只有一个日期属性。我知道fullcalendar使用start和end,但也会使用start和end:) 我的ajax视图如下 我的模板.html 我必须在我的数据库中的测试对象,所有在今天的日期和四个以上在以前的日子。我还启用了时区,因此我的模型存储了感知的datetime对象 但fullcalend

  • 问题内容: 使用与外观相当相似。 两者有什么区别? 问题答案: 该文件充分说明了这一点。是一个完整的用户模型,具有作为抽象类的字段,因此你可以从中继承并添加自己的配置文件字段和方法。仅包含身份验证功能,但不包含实际字段:在子类化时必须提供它们。