【发布时间】:2012-03-23 16:58:38
【问题描述】:
我的应用程序 Rails 和语言环境参数有一点问题。
我成功地在 routes.rb 文件中启用了我所有控制器的路由,并在 URL 中使用我的 :locale 值在域和控制器之间进行。
当控制器需要使用“Data.find(:all)”或“Data.all”方法或自定义条件来查看所有数据时,我会收到路由错误。
p>如果只有 une 数据由 ID 或 ONE 参数过滤以仅呈现 ONE 数据,则一切正常。
在日志中,我只看到“500 内部错误”和我在网站上看到的错误(开发模式)。
这是完整的错误代码:
没有路线匹配 {:action=>"edit", :controller=>"translation_english_words", :locale=>#网址是:“http://domain/fr/translation_english_words”(:domain/:locale/:controller)
我的控制器是“translation_english_words”,并且在我的数据库中有一个同名的表。
表格有3列,id:autoincrement, data:string, transvalue:string
我看到路由中的 ":locale" 部分不包含 "fr" 或 "en" 或其他语言环境是必须包含的。它只是不包含以 " 开头并以 " 结尾的所有其他参数,例如 ":action" 和 ":controller "
实际上,我需要语言环境来检测所需的语言。
不使用任何“t(:value)”翻译atm。
此错误不仅出现在此控制器上,而且出现在需要从任何表中排序多个 UNIQUE 范围数据的每个控制器上。
有人知道如何解决我的问题吗?
【问题讨论】:
-
请accept the answer解决了您的问题,不要在您的问题中添加“标签”。
标签: ruby-on-rails database internationalization locale