Grails i18n UrlMappings

2024-02-23

我正在处理以下问题。在我们的项目中,我们为同一网站启动了不同的国际化域名。 问题在于不同语言的 UrlMappings。 例如:

  • 英文:姓名联系人:“/contact”(controller: 'static', action: 'index') { id = '/contact' }
  • 德语:name deContact: "/kontakt"(controller: 'static', action: 'index') { id = '/contact' }

一遍又一遍地重复所有代码。是否有解决方案将两个 url 映射分组以使用相同的控制器、操作和逻辑?

例如,如果有类似的东西就好了: 姓名联系人:“[/contact|/kontakt/etc..]”(控制器:'static',操作:'index'){ id = '/contact' } 提供调用相同代码的可选网址。

提前致谢


您可以拥有UrlMapping从中读取映射名称messageSource per Locale并在映射中使用相同的内容。就像是:

UrlMapping.groovy

    import org.springframework.context.i18n.LocaleContextHolder as LCH
    class UrlMappings {
        static mappings = {
            def i18nContact = getGrailsApplication().getMainContext().getMessage('app.url.mapping.contact', [] as Object[], 'contact', LCH.getLocale())

            "/${i18nContact}"(controller: 'static', action: 'index') { id = '/contact' }
        }
    }

消息.属性

app.url.mapping.contact=联系人

messages_de.properties

app.url.mapping.contact=联系

您只需要继续添加其他条目locales在相应的消息源中。

Note:您可以通过设置默认值进行相同的测试Locale前往德国resources.groovy as

import org.springframework.web.servlet.i18n.FixedLocaleResolver
beans = {
    localeResolver(FixedLocaleResolver, Locale.GERMANY) {
        Locale.setDefault(Locale.GERMANY)
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Grails i18n UrlMappings 的相关文章

  • Grails 与 MongoDB、对象 id 和脚手架

    我使用集成测试和 Grails 脚手架将数据写入 mongoDB 数据库时遇到问题 当尝试从 列表 类型页面中选择域实例时 我收到错误 未找到 id null 的 域名 我确信这是因为 Grails url controller actio
  • 使用带有部分模板文件的 i18n gem 时出现问题

    我正在使用 Ruby on Rails 3 1 我想知道如何正确处理与部分模板文件相关的国际化 那是 在我的app views users flag html erb我有的文件 在我的app views users flag form ht
  • Grails 中 findAll、getAll 和 list 的区别

    使用 Grails 有多种方法可以完成同一件事 查找所有域类实例 Book findAll Book getAll Book list 检索指定 id 的域类的实例 Book findById 1 Book get 1 你什么时候使用每一个
  • 获取 grails 中单击的提交按钮的名称

    在表单上我有两个提交按钮
  • 如何对 Grails 应用程序进行并发修改测试

    我想运行测试来模拟用户同时修改 Grails 应用程序的某些数据 我可以使用任何插件 工具 机制来有效地做到这一点吗 它们不必是特定于 grails 的 应该可以并行触发多个操作 我更愿意在功能级别上运行测试 到目前为止我正在使用 Sele
  • Java Swing - 在运行时动态切换语言环境

    我了解如何国际化 java 程序 但我有一个问题 我的程序中的语言可以随时切换 但我的程序可以存在多种状态 这意味着它可能会也可能不会打开多个 JLabels JPanel JFrame 等 是否有一个类或方法可以将当前的 GUI 更新为切
  • 从控制器传递 gsp 参数

    我如何通过不是域类实例的控制器将参数传递到groovy服务器页面 您将参数放入返回给 GSP 的模型对象映射中 例如 def index def hobbies basketball photography render view inde
  • UrlMappings 将 URL 指向 Grails 中的资产管道文件

    在 Grails 3 0 中 如何将 URL 映射到assets folder 例如 http localhost 8080 favicon ico gt grails app assets images bookmark ico 我尝试了
  • 如何重写 GORM/Grails 的 addTo* 和 RemoveFrom* 方法?

    我尝试重写 Grails GORM 提供的动态方法 addTo 但它似乎不起作用 这是代码 class Match static hasMany players Player matchPlayers MatchPlayer void ad
  • Grails 操作被调用两次。帮助!

    我正在编写一个 grails 应用程序并遇到一个奇怪的问题 单击页面上的提交按钮时 关联的操作会快速连续调用两次 这会导致一切都严重破坏 以前有其他人见过这个问题吗 下面是我的代码 从普惠制页面
  • 尝试从 Django 模板更改语言时出现问题

    我需要包含两个按钮或链接以允许用户在英语和西班牙语之间更改语言 我读了the docs https docs djangoproject com en 1 5 topics i18n translation the set language
  • 在 Swing 中使用印度语输入法输入文本时不显示英文字符

    我正在开发一个应用程序 它接受英语文本并使用自定义的第 3 方 API 将音译为印度语 受支持的几种语言之一 该应用程序针对 Windows XP 7 和 Ubuntu 我们使用自定义输入法来加载所需的印度语字体 并使用它渲染文本 此外 用
  • Grails 渲染 PDF 文件

    我正在尝试在网页中呈现 PDF 文件 但使用以下语法时 我得到了一个奇怪的字符组合 render file new File path to file pdf fileName myPdfFile pdf 有谁知道除了上面的行之外我还需要添
  • UITextInputMode currentInputMode 已弃用。建议更换?

    在我们的应用程序中 我们想检测当前的键盘语言 例如 如果用户在 设置 gt 常规 gt 键盘 gt 键盘 下设置了多种语言键盘 我们想知道他们正在输入什么语言 并在发生变化时从 NSNotificationCenter 收到通知 void
  • Grails 默认包名称

    我是 Grails 的新手 而且非常喜欢它 我想将我的课程放在像这样的包中org company project module model 重复对我来说很痛苦create domain class
  • grails/mysql 时区更改

    完成更改应用程序时区的最佳方法是什么 在我看来 必须发生以下情况 服务器 TZ 已被系统管理员更改 mysql必须重新启动 数据库中每个基于时间的列都必须使用convert tz 或等效方法更新所有值 因此 要么必须编写一个 mysql 脚
  • grails 重写重定向控制器方法

    我试图覆盖默认的控制器重定向方法 但似乎无法让以下代码正常工作 我创建了一个插件 我正在尝试使用 doWithDynamicMethods 来替换重定向 def doWithDynamicMethods ctx gt application
  • Grails + Spring Security:无法登录

    我刚刚开始学习Grails和Spring 我已经按照官方教程创建了一个登录系统 但我无法登录 用户名或密码不匹配 我知道 90 的情况下这是由于双重编码或多个数据源 这也导致双重编码 造成的 但我也没有这样做 class BootStrap
  • Java EE 目录结构

    我对以下教程有疑问 http www mkyong com jsf2 jsf 2 internationalization example http www mkyong com jsf2 jsf 2 internationalizatio
  • Grails transactionManager 运行时出现异常

    当编译一个grails v2 3 3项目运行项目时出现以下错误Netbeans 7 4 Loading Grails 2 3 3 Configuring classpath Configuring classpath Environment

随机推荐

  • 卡夫卡连接|无法反序列化主题数据 |检索 id 的 Avro 键/值架构版本时出错 |未找到主题错误代码:40401

    首先感谢 OneCricketeer 迄今为止的支持 到目前为止我已经尝试了很多配置 我不知道还能尝试什么 使用汇合connect standalone worker properties sink properties访问外部流 连接正在
  • 如何拥有 JFrame 最大化图标

    我如何创建一个JFrameMac 上 eclipse 中的窗口有一个图标 可以使窗口全屏显示 就像大多数窗口右上角的双箭头图标一样 看一眼 OSX Lion 上 Java 应用程序的全屏功能 https stackoverflow com
  • Java,替换列表中的值

    我有以下问题 我想用一个方法获取一个列表 在该列表中找到一个值并将其替换为另一个值 void replaceAll ArrayList
  • 错误代码 7503 - 应用程序未在我们的商店中注册

    我尝试通过 Graph API 接收呼叫信息 准确地说 我尝试运行文档中的示例 5 但我只收到以下错误 error code UnknownError message errorCode 7503 message Application i
  • nvm 在哪里存储 node.js 安装?

    我找不到通过以下方式下载和安装的 Node js 安装位置 nvm install 5 0 你知道答案吗 nvm which 5 0将为您提供该版本 Node js 的安装路径
  • 尝试评估缺失的嵌套键时,Helm 图表失败,并显示“nil 指针评估接口 {}”

    我正在编写一个 Helm 3 库图表 并希望创建一个具有默认值的 YAML 但是 当尝试设置默认值时nestedkey 不存在 Helm 失败并显示以下错误消息 nil pointer evaluating interface 假设我的 K
  • Grasshopper 语音 + Twilio 文本

    我的公司目前使用 Grasshopper 作为语音系统来接收和路由入站客户支持电话 它运行得很好 只不过现在是 2014 年 人们希望能够通过短信向我们的免费客户支持号码发送问题并获得回复 Grasshopper 不支持接收 转发短信 所以
  • 使用 TThread.Resume 有什么问题? [复制]

    这个问题在这里已经有答案了 很久以前 当我开始在 Delphi 中使用线程时 我通过调用使线程自行启动TThread Resume在其构造函数的末尾 并且仍然这样做 如下所示 constructor TMyThread Create con
  • 在两个 JPanel 对象之间发送消息

    我有一个包含 JPanel 的 Java JFrame 在该 JPanel 中 有两个独立的 JPanel 当用户单击第一个 JPanel 中的按钮时 需要向另一个 JPanel 发送一条消息 通知它单击了哪个按钮 在这样的对象之间发送消息
  • 是否可以在 TensorFlow 中仅在一次图形运行中高效地计算每个示例的梯度?

    TD DR 有没有一种方法可以在一次图形运行中以矢量化形式评估 f x1 f x2 f xn 其中 f x 是 f x 的导数 就像是 x tf placeholder tf float32 shape 100 f tf square x
  • iOS Objective C:显示 RTF 文档

    我想在视图中显示 RTF 文档 该文档将在 Microsoft Word 中开发并包含图像 使用提供的标准例程执行此操作的最佳方法是什么 我真的很想要示例代码来从包中加载 RTF 文档 亲切的问候 贾森 UIWebView 打开 rtf 文
  • Ajax 之后的 Javascript [重复]

    这个问题在这里已经有答案了 可能的重复 在 AJAX 请求之前使用 JavaScript 获取日期 https stackoverflow com questions 14416443 obtain dates with javascrip
  • 在php中的数字之间画点

    我想在我的总价值之间画点 如果我有 425000 我希望它显示为 425 000 php 中是否有一个函数可以将数字的点内爆 或者我该怎么做 Use 数字格式 http php net manual en function number f
  • 如何使用 .Net 4 进行 WCF 非 HTTP 激活?

    我有一个使用非 HTTP 激活的 Net 3 51 服务 这很好用 我想将其转换为 Net 4 在 Windows 7 中 如果您转到 控制面板 添加删除程序 打开或关闭 Windows 功能 则会出现 Microsoft NET Fram
  • 让 mmm 模式在 emacs 24 中工作

    我一直在尝试让 mmm 模式发挥作用 特别是针对 Rails 开发 我已按照安装说明进行操作 但无法进入我正在寻找的特定混合模式和特殊突出显示 最特别的是 erb 文件 这是我的 emacs 文件 custom set variables
  • 为什么在 GCC/C++ 中“pragma GCC Diagnostic Push”会弹出警告?

    pragma GCC diagnostic push it pop warning expected error warning ignored after pragma GCC diagnostic 为什么 我在 Linux 中使用 GC
  • 仅当不在生产环境中时才导入 NodeJS

    基本上 我使用 morgan 来查看开发中的日志 我有它在下面 save dev 但在我的app js I use const morgan require morgan 它在我的本地计算机上运行良好 但我只使用摩根 具体取决于NODE E
  • 将 Rails 应用程序从 Windows 连接到 SQL Server 2005

    I sadly 必须部署一个railsWindows XP 上的应用程序必须连接到微软SQL服务器2005 在网上冲浪有很多关于从 Linux 连接到 SQL Server 的内容 但找不到如何从 Windows 进行连接 基本上我遵循了以
  • 下标超出范围,VBA

    您好 我收到错误 因为下标超出范围 但我无法确定原因 错误位于标有 的行中 Function RemoveDups aryValues As Variant Dim dict As Object Set dict CreateObject
  • Grails i18n UrlMappings

    我正在处理以下问题 在我们的项目中 我们为同一网站启动了不同的国际化域名 问题在于不同语言的 UrlMappings 例如 英文 姓名联系人 contact controller static action index id contact