-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hallo!

Hab gerade nen kleines Problem mit caching und gettext.
Gettext überschreibt die

fragment_cache_key
und
expire_fragment

      def fragment_cache_key_with_gettext(name)
        ret = fragment_cache_key_without_gettext(name)
        if ret.is_a? String
          ret.gsub(/:/, ".") << "_#{normalized_locale}"
        else
          ret
        end
      end
      alias_method_chain :fragment_cache_key, :gettext

      def expire_fragment_with_gettext(name, options = nil)
        return unless perform_caching

        key = fragment_cache_key_without_gettext(name)
        if key.is_a?(Regexp)
self.class.benchmark "Expired fragments matching: # {key.source}" do
            fragment_cache_store.delete_matched(key, options)
          end
        else
          key = key.gsub(/:/, ".")
self.class.benchmark "Expired fragment: #{key}, lang = # {available_locales.inspect}" do
            available_locales.each do |lang|
              fragment_cache_store.delete("#{key}_#{lang}", options)
            end
          end
        end
      end
      alias_method_chain :expire_fragment, :gettext

dazu benutzt es

    def available_locales
      unless (GetText.cached? and @@available_locales)
@@available_locales = (Dir.glob(File.join(RAILS_ROOT, "locale/[a-z]*")).map{|path| File.basename(path)} << "en").uniq.sort.reverse
      end
      @@available_locales
    end

und

    # Returns a normalized locale which is in available_locales.
    # * locale: a Locale::Object or nil.
    def normalized_locale(locale = nil)
      locale ||= GetText.locale
      (available_locales &
[locale.to_general, locale.to_s, locale.language, Locale.default.language, "en"].uniq)[0]
    end


Das Problem ist, dass aber immer nur _en an die cache files gehängt wird, egal welche locale ausgewählt ist und beim expire nie etwas expired wird, weil es da wohl nicht geht...

ist da jemandem was aufgefallen? Ich glaube es liegt an der available_locales, die wohl nicht so recht funktionieren will.

Bin über jede Idee dankbar!

Gruß
Manuel
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (Darwin)

iD8DBQFISOxNs/WwCK0ZZEARAnApAKC7ODTUiGTDh4gdcvVGOuPPYeCooACglOJ4
peGOV1HYDEfO2wkyhhRAQp4=
=SnCC
-----END PGP SIGNATURE-----
_______________________________________________
rubyonrails-ug mailing list
[email protected]
http://mailman.headflash.com/mailman/listinfo/rubyonrails-ug

Antwort per Email an