我收到以下錯誤在我的Rails應用程序之一[紅寶石1.8.7 + Rails的2.3.9]內存緩存錯誤非法字符鍵(紅寶石1.8.7/2.3.9的Rails)
A ArgumentError occurred in home#dashboard:
illegal character in key "dashboard_prod:views/reports/1050 - 097"
/opt/ruby-enterprise/lib/ruby/gems/1.8/gems/activesupport-2.3.9/lib/active_support/vendor/memcache-client-1.7.4/memcache.rb:643:in `get_server_for_key'
我用Google搜索,發現有人在過類似的問題:http://www.coffeepowered.net/page/2/
該網頁時被提及,這應該工作:
class ActionController::Caching::Actions::ActionCachePath
def path
@cached_path ||= Digest::SHA1.hexdigest(@path)
end
end
但我不知道我應該在哪裏鍵入此。所以,我有兩個問題:
- 如何在手
- 我應該在哪裏寫象上面的代碼中我們覆蓋一些標準類或類的寶石定義解決問題。
任何幫助,將不勝感激。
正如我期待的錯誤是由於空間在1050年 - 097 [dashboard_prod:views/reports/1050 - 097] ...我刪除了空格[1050-097 =>這實際上是一個郵政編碼,應用程序顯示一些基於郵政編碼的報告],一切工作正常。但我真的很想知道如何進行哈希路徑工作,因爲我認爲我可以再次遇到一些問題。如果我的客戶再次輸入空間怎麼辦?誰知道其他角色不會與memcached一起工作。 – RubyDev 2011-05-24 19:58:00