django - 在 django blocktrans 中使用 'now'?

标签 django templates internationalization

我想将年份添加到 Django blocktrans 中 - 使用以下语法。

{% blocktrans with now|date:"Y" as copydate %}
     © {{ copydate }} Company
{% endblocktrans %}

这类似于现有的 Django 票证 (http://code.djangoproject.com/ticket/3088),显然现在应该可以使用,但我也无法开始工作。

在这两种情况下,标签都没有展开,但块传输的其余部分渲染得很好。

最佳答案

唯一的方法是在 python 中获取您的日期并使用日期过滤器作为 Reiner 建议或定义您自己的模板标签。
您可以创建一个小的上下文处理器来在您的上下文中设置日期。

def my_date(request):
  import datetime
  return {'my_date':datetime.datetime.now()}

并将其添加到 settings.py 中
TEMPLATE_CONTEXT_PROCESSORS = DEFAULT_SETTINGS.TEMPLATE_CONTEXT_PROCESSORS + (
      'the_package_of_my_tiny_function.my_date',
      )

在您的模板中使用它,如下所示:
   {% blocktrans with my_date|date:"Y" as copydate %}
      © {{ copydate }} Company
   {% endblocktrans %}

不要忘记在您的 View 中将 RequestContext 作为 context_instance 传递

Here就是例子。

关于django - 在 django blocktrans 中使用 'now'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4931805/

相关文章:

python - 表单返回 <django.db.models.query_utils.DeferredAttribute object at 0x10e6ee898>

python-3.x - 如何使用 python reverse() 函数将 id 列表作为查询参数传递?

java - Play Framework 为一个 html 页面渲染多个 View

javascript - 递归地迭代一个对象并将父级附加到每个子级

c# - C# 应用程序中的本地化

asp.net Web 表单国际化

python - 使用 Heroku 在 Django 应用程序中部署时出现错误

python - 控制 Django 继承模型中的对象创建流程

c++ - 我已经创建了一个模板函数,但在检查输入是奇数还是偶数时出现错误 C++

java - 如果 strings.xml 中存在未转义的撇号,如何使构建失败?