あああ

<%= javascript_include_tag(:all, :cache => true) %> 

としてあると、 config.action_controller.perform_caching = false の状態では表示がおかしくなる。 (lightboxのモーダルウィンドウが出っぱなしになる) どうにも原因不明なので、諦めてdevelopment環境でもキャッシュを有効にして作業してたんだが、viewをいじったりするたびにいちいちキャッシュを削除するのが激しくめんどくさいのできちんと調べてみた。

めんどいのでいきなり結論。 :cache => trueだとall.js(デフォルト)というJavaScriptを一つにまとめたファイルが生成されるんだけど、これが残ったままキャッシュを無効にするとall.jsまで読み込もうとしておかしくなる。 キャッシュまわりの開発のため一時的に有効にした時に生成されていた(そしてそのままgitリポジトリに取り込まれていた)のが残ってたらしい。 まぁ、考えたら当たり前なんだけど… .gitignoreに加えておこう。 ついでに教訓。git commit -aする時はよーく考えてからにしよう…