before_filter set_locale除控制器外 [英] before_filter set_locale except controller
本文介绍了before_filter set_locale除控制器外的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的routes.rb
MyApp::Application.routes.draw do
scope '(:locale)' do
#all resources here
end
namespace :blog do
resources :posts, :only => [:index, :show]
end
end
我的application_controller.rb
class ApplicationController < ActionController::Base
#
#
before_filter :set_locale
private
def default_url_options(options = {})
{locale: I18n.locale}
end
def set_locale
#code for detect locale here
end
#
#
end
scope '(:locale)'
中的所有资源都可以正常工作.
All the resources inside scope '(:locale)'
is working fine.
但是我不想在namespace :blog
中使用语言环境,当我尝试单击博客链接时,我可以看到此URL http://localhost:3000/blog/posts?locale=en
如何删除namespace :blog...
和blog resource
的语言环境?我想要一个类似http://localhost:3000/blog/posts
的网址,我想删除?locale=en
How can I remove locale of namespace :blog...
and blog resource
?. I want get a url something like http://localhost:3000/blog/posts
I want to remove the ?locale=en
谢谢!
推荐答案
在Blog控制器中使用skip_before_filter
吗?
Use skip_before_filter
in your Blog controllers?
这篇关于before_filter set_locale除控制器外的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文