[前][次][番号順一覧][スレッド一覧]

rails:1867

From: OZAWA Sakuro <sakuro@e...>
Date: Sun, 3 Dec 2006 15:52:31 +0900
Subject: [rails:1867] Re: GetTextとキャッシュ

さくです。

以下のようにしてみましたが、たとえばenとjaの 
localeデータしか用意していない場合にブラウザが要求する言語を  
fr にしてリクエストすると、lang=frのキャッシュが出来てしま 
い、これが消せなくなりますね。

さてどうしたものか。

app/controllers/application.rb
class ApplicationController < ActionController::Base
# :
   def expire_fragment_with_lang(name, options=nil)
     expire_fragment_without_lang(name, options)
     if name.is_a? Hash
       languages = Dir[File.join(RAILS_ROOT, 'locale', '*')].map{|l|  
File.basename(l)}
       languages.each do |lang|
         expire_fragment_without_lang(name.merge(:lang => lang),  
options)
       end
     end
   end
   alias_method_chain :expire_fragment, :lang
# :
end

On 2006/12/03, at 14:47, OZAWA Sakuro wrote:

> expireするときには、languageの値によらず、全言語の 
> fragmentを消去する必要があります。このとき、消すべき 
> fragmentの名前を指定するにはどうすればいいでしょう?
>
> langがfragment名のどの位置に入るかは分からないので、
> url = url_for(hash_for_url_without_lang)
> expire_fragment(%r{#{url}})
> では各言語のキャッシュにマッチしないんですよね。

-- 
OZAWA Sakuro <mailto:sakuro@e...>
♪踊れや(踊れや) 黄泉路の宴(妖の刻) 我は 
舞巫女(神の生贄) 戯れよ(捧げよ) いざ
EXEC_PAJA/.#Misya extracting / 志方あきこ


--
ML: rails@r...
使い方: http://QuickML.com/

[前][次][番号順一覧][スレッド一覧]

      1866 2006-12-03 06:47 [sakuro@e...         ] GetTextとキャッシュ                     
->    1867 2006-12-03 07:52 ┗[sakuro@e...         ]                                       
      1868 2006-12-03 09:51  ┗[sakuro@e...         ]