- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试学习 AngularJS 和 DjangoCMS,因此我创建了一个将它们一起使用的新项目。
状态
默认情况下,DjangoCMS 使用第一个 URL 段来确定站点的语言(/en/、/fr/)。默认情况下,每个不包含语言段的 URL 都会重定向到/en/。
这意味着,我所有的 AngularJS ajax 调用都需要发送至/en/api/或/fr/api/。
问题
我想使用第一段来确定 Angular 中用于国际化的语言。
并且还将第一个段全局设置到我的 AngularJS 应用程序,这样我就不需要在每个 ajax 调用上指定它。
可能的解决方案
我发现的一个解决方案是在 Django 端为每种语言使用不同的模板。
<base href="/en/">
在 <head>
标签。<base href="/fr/">
在 <head>
标记,我可以使用预捆绑的规则集,也可以简单地将本地脚本添加到脚本列表 ( https://docs.angularjs.org/guide/i18n )。我想这也适用于更多语言,但这意味着我必须为每种语言创建特定的模板和代码。
最佳解决方案?
我认为最好的办法是在 Angular 应用程序中定义一个逻辑,根据第一个 url 段加载语言脚本,并在应用程序中全局确定第一个段。我们将避免为每种语言编写代码。 该解决方案可行吗?我搜索了在 Angular 上动态设置基本 url,但没有找到任何有趣的结果。
我不确定这个问题应该出现在 StackOverflow 上,但我不太了解其他堆栈交换论坛。
谢谢!
最佳答案
我会做这样的事情:
{% load i18n %}
并设置<base href="">
像这样:
{% get_current_language as LANGUAGE_CODE %}
<base href="/{{ LANGUAGE_CODE }}/" />
angular.module("myapp.services", [])
.config(["$provide", function ($provide) {
$provide.value("base", $("base").attr("href"));
}]);
并将其注入(inject)到进行 ajax 调用的服务中:
angular.module("myapp.services").factory("myService", ["base", function (base) {
var uri = base + "api/some_url";
...
关于javascript - 如何处理 DjangoCMS i18n URL (/en/my_page,/fr/my_page...) 和 AngularJS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35512561/
我想为不同的本地化使用不同的图像。但是,我有所有分辨率和所有语言的图像。有没有办法做到这一点? 最佳答案 是的,有可能。可绘制-de-rDE-ldpi,可绘制-de-rDE-mdpi。检查一下。 关于
在我添加 fr-Fr 区域设置的 angular.json 中,我看到一条消息 找不到“fr-FR”的区域设置数据。在运行命令 npm run build 时使用“fr”的语言环境数据。 但是,我在生
我正在尝试为我的其中一个站点创建法语版本。我在页面顶部设置了 setlocale(LC_ALL, 'fr_FR');,并使用 strftime 我以法式风格正确显示日期。 但是我在处理数字时遇到了一些
我们有一个读卡器验证(在 php/javascript 中),可以正常工作。但是,当我们尝试在使用 azerty 键盘的网站上实现此功能时,滑动数据会被错误解释,因此无法识别该用户。 例如:在 en-
我有一个 shell 脚本在 cygwin 环境中的 windows 环境中运行。该脚本有一个清除功能,可以根据特定条件删除系统中的特定文件夹。 我准备好要删除的所有文件夹的列表,然后使用以下命令:
我目前正在本地化我的 iOS 应用程序。当我转到我的项目时,在本地化菜单下单击 + 按钮时,我会得到一个可供选择的语言列表,例如法语 (fr)。此外,在该菜单的底部有一个名为“其他”的子菜单,该菜单加
我围绕字符串转换和货币编写了一些单元测试。 我正在测试字符串是否以我期望的格式返回,给定 CultureInfo 方法已通过。 public string GetOverspendAmount(do
我有一个jsfiddle . 我拥有的: 我想要什么: 问题: 希望相关的部分是: grid-template-columns: repeat(auto-fit, 1fr); 我的部分中的两个元素
本文整理了Java中fr.bmartel.youtubetv.YoutubeTvView类的一些代码示例,展示了YoutubeTvView类的具体用法。这些代码示例主要来源于Github/Stacko
我正在寻找一个可以将用户的输入转换为具有特定规则的新输出的函数。 这条规则是: 第一个字母大写(例如:Paris) 如果字符串的每个单词之间包含两个破折号 (-),则对第二个单词的第一个字母应用大写(
我想将我的应用程序本地化为法语和其他语言,因此我创建了上述文件夹并在将它们翻译成法语后填充了所有字符串。我收到编译时错误“撇号前面没有\”。根据报错和this SO question我在所有撇号前添加
rm -fr * 不会删除.files 另一方面, rm -fr * .* 会删太多! 在 Bash 中是否有可靠的方法递归删除目录的所有内容? 我能想到的一种方法是: rm -fr $PWD mkd
我问这里是因为我数学很烂。 假设网格大小为 1920 像素,并且我没有使用显式大小调整。 即有多少 fr。 1200 像素?我如何计算它? .grid { display: grid; gri
我的网格代码遇到问题。我想互相显示两个字段。我创建了两个 1fr 1fr,每个字段应该占用一个 fr。我什至尝试了网格区域,但不知何故它不起作用,但字段仍然不会与网格对齐。非常感谢。我很感谢你可能有的
在 Css 网格中我可以: .grid { display: grid; grid-template-columns: 1fr 2fr 1fr; } 有什么方法可以设置特定元素的宽度。
本文整理了Java中fr.opensagres.xdocreport.converter.XDocConverterException类的一些代码示例,展示了XDocConverterExceptio
我在Firefox 扩展的环境中工作。 问题 我正在尝试创建一个具有特定 lang 属性的新元素。我尝试了 How to create HTML element with lang attribute
已关闭。这个问题是 not reproducible or was caused by typos 。目前不接受答案。 这个问题是由拼写错误或无法再重现的问题引起的。虽然类似的问题可能是 on-top
我想解析脚本中的日期,我想知道是否有等效的: relativedelta(days=1, weekday=MO) 但是几个月了? 现在,我提取文本中的月份数字,并将其与文档的创建日期(和月份)进行比较
我正在使用 ul li 为网站创建导航。目前有7个链接。我已将 ul 的显示设置为带有 repeat(7,1fr) 的网格。但是我希望第一个和第二个 li 为 .5fr 和 1.5fr。我该怎么做?
我是一名优秀的程序员,十分优秀!