我有一个德语名称为'kontakt'的页面,但访问权限是/ contact。 我开始讨论这个错误,在翻译中思考并且我做了更改:
(控制器)queries-controller.rb:改变
def find_page
@page = ::Refinery::Page.find_by_link_url("/kontakt")
end
i18n.rb:
config.enabled = true
config.default_locale = :de
config.current_locale = :de
config.default_frontend_locale = :de
config.frontend_locales = [:en, :de]
config.locales = { :en => 'English', :de => 'Deutsch' }
我改变了(型号)setting.rb:
def confirmation_subject(locale="de")...
而不是'en'。
我将refinerycms中的重定向更改为/ kontakt。
我在浏览器中收到错误“页面未正确重定向”。
控制台:
在2013-02-19 17:07:27 +0100开始获取127.0.0.1的“/ kontakt” Refinery处理:: PagesController #show as HTML参数: {“path”=>“kontakt”,“locale”=>:de} Refinery :: Role Load(0.2ms)SELECT “refinery_roles”。* FROM“refinery_roles”WHERE “refinery_roles”。“title”='炼油厂'LIMIT 1炼油厂::用户装载 (0.2ms)SELECT“refinery_users”。* FROM“refinery_users”INNER JOIN “refinery_roles_users”ON“refinery_users”。“id”= “refinery_roles_users”。“user_id”WHERE “refinery_roles_users”。“role_id”= 1炼油厂::页面加载(0.4ms) 选择“refinery_pages”。* FROM“refinery_pages”INNER JOIN “refinery_page_translations”ON “refinery_page_translations”。“refinery_page_id”= “refinery_pages”。“id”WHERE“refinery_page_translations”。“locale”IN ('en','de')和“refinery_page_translations”。“slug”='kontakt'AND “refinery_pages”。“parent_id”IS NULL LIMIT 1重定向到 ../kontakt Refinery ::用户负载(0.1ms)SELECT “refinery_users”。* FROM“refinery_users”WHERE“refinery_users”。“id”= 3 LIMIT 1 Refinery :: Role Load(0.1ms)SELECT“refinery_roles”。* FROM “refinery_roles”INNER JOIN“refinery_roles_users”ON “refinery_roles”。“id”=“refinery_roles_users”。“role_id”WHERE “refinery_roles_users”。“user_id”= 3完成302在8ms内找到 (ActiveRecord:1.1ms)缓存:[GET / kontakt] miss cache:[GET / kontakt] 未命中
development.log的日志:
在2013-02-19 17:07:27 +0100开始获取127.0.0.1的“/ kontakt” Refinery处理:: PagesController #show as HTML参数: {“path”=>“kontakt”,“locale”=>:de} [1m [35mRefinery :: Role Load] (0.1ms)[0m SELECT“refinery_roles”。* FROM“refinery_roles”WHERE “refinery_roles”。“title”='Refinery'LIMIT 1
[1m [36mRefinery ::用户负载(0.2ms)[0m [1mSELECT “refinery_users”。* FROM“refinery_users”INNER JOIN “refinery_roles_users”ON“refinery_users”。“id”= “refinery_roles_users”。“user_id”WHERE “refinery_roles_users”。“role_id”= 1 [0m [1m [35mRefinery :: Page] 加载(0.2ms)[0m SELECT“refinery_pages”。* FROM“refinery_pages” INNER JOIN“refinery_page_translations”ON “refinery_page_translations”。“refinery_page_id”= “refinery_pages”。“id”WHERE“refinery_page_translations”。“locale”IN ('en','de')和“refinery_page_translations”。“slug”='kontakt'AND “refinery_pages”。“parent_id”IS NULL LIMIT 1重定向到 //../kontakt [1m [36mRefinery ::用户负载 (0.1ms)[0m [1mSELECT“refinery_users”。* FROM“refinery_users”WHERE “refinery_users”。“id”= 3 LIMIT 1 [0m [1m [35mRefinery :: Role Load] (0.1ms)[0m SELECT“refinery_roles”。* FROM“refinery_roles”INNER 加入“refinery_roles_users”ON“refinery_roles”。“id”= “refinery_roles_users”。“role_id”WHERE “refinery_roles_users”。“user_id”= 3完成302发现在6ms (ActiveRecord:0.8ms)
我在文件中有翻译: en.yml和de.yml
我在http://refinerycms.com/edge-guides/translate-refinery看到了这些信息 但我找不到解决办法。
如果我尝试使用/ contact进入,即使进行了所有更改,也能正常工作。
此外,在页面的公式中,验证是用英语读取值。
答案 0 :(得分:0)
我在我的网站上遇到了同样的问题,并尝试了很多不同的方法来解决它。最后,简单的解决方案奏效了。试着这样做:
转到插件。 全选 - 勾选每个复选框 选择停用 测试网站 - 它可能会也可能不会工作 在此之后“重新激活”所有插件。
希望能解决这个问题。在很多其他事情之后我尝试这样做了,效果很好!我希望我能先做到这一点。