Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用babel、django和jinja2服务i18n js

使用babel、django和jinja2服务i18n js
EN

Stack Overflow用户
提问于 2012-05-18 05:58:42
回答 1查看 1.3K关注 0票数 1

使用django,使用jinja2进行渲染,使用babel进行消息提取

我有一些需要国际化的js文件。我还没有想出一种从它们中提取消息的语法,它也可以让jinja2呈现它们。要么jinja2必须学会阅读可提取的语法,要么我必须从jinja2可以呈现的内容中提取。(或者,完全以另一种方式完成此操作)

提取

如果我用js标记消息

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
gettext('message')

它提取得很好。

渲染

但是jinja2不会替换js中的gettext调用(我在返回js模板之前用jinja2呈现它们)-它需要类似这样的东西

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{% trans %}message{% endtrans %}

但是,该语法不能用于提取消息。

Babel使用babel.messages中的函数extract_javascript来提取消息,这看起来不足以处理这种类型的标记。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-05-18 07:02:34

好吧,看起来我可以这样做:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{{gettext("message")}} 

(不定义gettext)

在JS和babel中将提取& jinja2将替换它。

不过,要注意引号。你不能这样做:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
'{{gettext("message")}}'

因为extract_javascript不会读它。但是,只要安全地呈现引号,您就可以将引号放入其中:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{{gettext("'message'")|safe}}

所以,让你的译者确保在原文中找到引文的地方留下它们。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10647449

复制
相关文章
babel-register 和 babel-node 的使用
Babel 6 中 babel-register 和 babel-node 两个模块是开发时非常好用的转码工具。先来看一下如何使用:
逆葵
2019/04/24
2.6K0
babel 入门使用 (babel 7.4.0)
官网 安装 // babel 核心 yarn add @babel/core // babel 预设插件 yarn add @babel/preset-env // babel 命令行 yarn add @babel/cli // babel 垫片(非必须,提供Promise, async await等) 使用例子 根目录创建配置文件 babel.config.js module.exports = { presets: [ "@babel/env" ], plugins: [] }
copy_left
2019/08/21
1.3K0
flask中的所有第三方模块大集合
Flask-AppBuilder - Simple and rapid Application builder, includes detailed security, auto form generation, google charts and much more. FlaskEx - UNKNOWN gourd - easy server framework. add flask's style route to tcp/udp server. kit - Flask, Celery, SQLAlchemy integration framework. Flask-WTF - Simple integration of Flask and WTForms alchemist - A server architecture built on top of a solid foundation provided by flask, sqlalchemy, and various extensions. Flask-Mail - Flask extension for sending email sga - make it easier to use pyga for web develop. and make pyga compatible with flask and django. flask-peewee - Peewee integration for flask flask_util_js - flask's util in javascript. such as url_for etc. Flask-Security - Simple security for Flask apps Flask-RESTful - Simple framework for creating REST APIs Flask-SeaSurf - An updated CSRF extension for Flask. Flask-Cache - Adds cache support to your Flask application Flask-Admin - Simple and extensible admin interface framework for Flask Flask-Slither - A small library between MongoDB and JSON API endpoints Flask-Bootstrap - An extension that includes Bootstrap in your project, without any boilerplate code. Flask-Script - Scripting support for Flask Flask-GoogleLogin - Extends Flask-Login to use Google's OAuth2 authorization Flask-Exceptional - Adds Exceptional support to Flask applications Flask - A microframework based on Werkzeug, Jinja2 and good intentions INSTALLED: 0.10.1 (latest) clay-flask - Clay is a framework for building RESTful backend services using best practices. Flask-Classy - Class based views for Flask ShelfCMS - Enhancing flask microframework with beautiful admin and cms-like features
菲宇
2020/03/20
1.4K0
Python Flask 优秀资源大全
版权: https://github.com/humiaozuzu/awesome-flask Awesome Flask ============= 介绍 Awesome-Flask 是由 h
若与
2018/04/25
4.3K0
Python Flask 优秀资源大全
使用Python jinja2和云函数做页面渲染
本文由腾讯云+社区自动同步,原文地址 https://stackoverflow.club/article/blogseo_jinja2_scf/
羽翰尘
2019/11/20
1.4K0
如何使用 babel
Babel 用于将 ES6 的代码转化为 ES5,使得 ES6 可以在目前的浏览器环境下使用。学习使用 babel 是为了使用 ES2015 做准备。本文将介绍如何使用 babel,以及一些相关的配置。
零式的天空
2022/03/28
2.2K0
简单使用babel
要使用babel,首先需要了解用的东西?它是一个用来进行ES6转化到ES5的转码器,从而在现有环境中进行执行。 一、配置文件.babelrc(搬运下) Babel的配置文件是.babelrc,存放在项目的根目录下。使用Babel的第一步,就是配置这个文件。 该文件用来设置转码规则和插件,基本格式如下。 { "presets": [], "plugins": [] } presets字段设定转码规则,官方提供以下的规则集,你可以根据需要安装。 # ES2015转码规则 $ npm install
用户1148881
2018/01/15
7500
Python进阶28-Django 模板层(Jinja2)
-多年互联网运维工作经验,曾负责过大规模集群架构自动化运维管理工作。 -擅长Web集群架构与自动化运维,曾负责国内某大型金融公司运维工作。 -devops项目经理兼DBA。 -开发过一套自动化运维平台(功能如下): 1)整合了各个公有云API,自主创建云主机。 2)ELK自动化收集日志功能。 3)Saltstack自动化运维统一配置管理工具。 4)Git、Jenkins自动化代码上线及自动化测试平台。 5)堡垒机,连接Linux、Windows平台及日志审计。 6)SQL执行及审批流程。 7)慢查询日志分析web界面。
DriverZeng
2022/09/26
1.8K0
Python进阶28-Django 模板层(Jinja2)
Ansible Jinja2 模板使用
3、 该用户也被 ansible 使用,因为几乎所有的生产环境都是禁止 root 远程登录的(因此该 yun 用户也进行了 sudo 提权)。
踏歌行
2020/10/15
4.9K0
Ansible Jinja2 模板使用
python-成长之路
————————————–  https://github.com/Evlos/Python-Blog-RedisPress
py3study
2020/01/07
1.4K0
django 配置django_compressor 2.3 压缩js和css
最新的django_compressor和之前版本的配置方式稍有差别,记录在此以免再走弯路。
小贝壳
2020/03/05
1.2K0
Babel是如何读懂JS代码的
本文不再介绍Babel是什么也不讲怎么用,这类文章很多,我也不觉得自己能写得更好。这篇文章的关注点是另一个方面,也是很多人会好奇的事情,Babel的工作原理是什么。
@超人
2021/07/05
1.8K0
Babel是如何读懂JS代码的
基于Vue2.x的前端架构,我们是这么做的
通过Vue CLI可以方便的创建一个Vue项目,但是对于实际项目来说还是不够的,所以一般都会根据业务的情况来在其基础上添加一些共性能力,减少创建新项目时的一些重复操作,本着学习和分享的目的,本文会介绍一下我们Vue项目的前端架构设计,当然,有些地方可能不是最好的方式,毕竟大家的业务不尽相同,适合你的就是最好的。
街角小林
2022/03/21
1.6K0
基于Vue2.x的前端架构,我们是这么做的
回顾 babel 6和7,来预测下 babel 8
babel 最开始叫 6to5,顾名思义,功能是 es6 转 es5。我们知道,es 版本一年一个,有了 es7(es2016)、es8(es2017)等之后,显然,6to5 的名字已经不合适了,所以 6to5 改名为了 babel。
公众号@魔术师卡颂
2021/05/08
7930
回顾 babel 6和7,来预测下 babel 8
flask babel使用(flask 107)
本文参考https://translations.readthedocs.io/en/latest/flask-babel.html做了修改,如有疑问请指正。
用户5760343
2019/08/21
8720
flask babel使用(flask 107)
Flask-Admin修改成中文显示
今天的文章的主题是国际化和本地化,通常简称 I18n 和 L10n。我们想要我们的 microblog 应用程序被尽可能多的用户使用,因为我们不能忘记有许多人是不是讲英文的,或者会说英文,但是更愿意讲本国语言。
菲宇
2020/10/26
1.7K0
Vue 3.0 遇到的问题
注意: webpack 5 要求至少 Node.js 10.13.0 (LTS)
White feathe
2021/12/08
1.7K0
Vue 3.0 遇到的问题
jS正则和WEB框架Django的入门
该文章讲述了如何利用Python的Pandas库和Excel的VBA编程实现数据分析。首先介绍了Pandas库和Excel的VBA编程的基本概念,然后分别讲解了如何利用Pandas库和Excel的VBA编程实现数据的处理和分析。具体包括Pandas库的常用函数、数据读取、数据清洗、数据转换、数据分析等操作,以及Excel的VBA编程中的常见操作,如遍历工作表、提取表格中的数据、处理异常值、数据转换等。通过这些操作,可以高效地完成数据的处理和分析任务。
coders
2018/01/04
2.1K0
jS正则和WEB框架Django的入门
前端工程化在WMS 6.0中的实践
Tech 导读 在对大型前端项目进行国际化改造时,经常会遇到过工作量大、干扰项多以及容易遗漏等问题。而针对这些大量的重复的工作,自动化工具往往能提升很大的工作效率。本文将带读者了解node cli开发的基础知识,并对如何开发一个国际化校验工具来解决这些问题展开教学。 01  背景 在今年的敏捷团队建设中,我通过Suite执行器实现了一键自动化单元测试。Juint除了Suite执行器还有哪些执行器呢?由此我的Runner探索之旅开始了! 仓储中台的愿景是,以用户为根本,通过发现、定义、设计、交付可被多BP
京东技术
2022/08/25
1K0
前端工程化在WMS 6.0中的实践
点击加载更多

相似问题

如何使用jinja2及其i18n扩展(使用babel)

20

在Jinja2中使用babel链接

12

使用jinja2 + GAE的i18n

11

使用{{ Jinja2 () }}的Django和url模板

318

何时使用babel.config.js和.babelrc

20
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文