タグ別アーカイブ: error

Rails Sprockets::Rails::Helper::AssetFilteredError


Rails では application.js が require_treeassets/javascript 内の javascript ファイル をすべて読み込むようになっています。 その required_tree を削除するとエラーになるのですが、 ここではそのエラーを回避する方法を書き留めておきます。

環境

sprockets を導入していれば 起きるエラーです。 私もいくつかの環境で経験していますが、 今回使っていたのは次の環境でした。

  • Ruby 2.0.0
  • Rails 4.2.5

エラー内容

Sprockets::Rails::Helper::AssetFilteredError – Asset filtered out and will not be served: add Rails.application.config.assets.precompile += %w( xxxx.js ) to config/initializers/assets.rb and restart your server:

解決法

ほかにも解決法はありますが、 次のようにして、 とにかくすべてをコンパイル対象にします。 余計なものまでできてしまう可能性も否定できませんが。


Rails: Cells 3 から Cells 4 への アップグレード時に遭遇したエラー


gem の Cells 3 を Cells 4 にアップグレードした際に遭遇したエラーと対処法を記録しておきます。 すべてではないです。 ここにある対処法は、 それぞれの Cell クラス に対して行ってもいいですが、 ApplicationCell という親クラスを作ってそこに書き込むのが楽です。

対処した最終結果は Rails: Cells 3 から Cells 4 へのアップグレード に記載しています。

helper_method がないというエラー

lib/devise/controllers/helpers.rb で次のようなエラーが出ます。 そのとき私が使っていた devise のバージョンは 3.5.2 です。

undefined method `helper_method’ for XyzCell:Class

Cell クラス に次のコードを追加します。

なにもしないメソッドですが問題ありません。 Cells 3 の時は self.helper_method を呼ぶ必要があったのですが、 Cells 4 からは 使わなくてもよくなり、 メソッドも削除されたそうです。

参考: apotonick/cells Issue Not working with react-rails

dom_class でエラー

次のようなエラーが出た場合。

undefined method `dom_class’ for #<XyzCell:0x007ff36d4fecb0>

Cell クラス に 次のコードを追加します。

参考: apotonick/cells Troubleshooting

数字の3桁区切り number_with_delimiter がなくてエラー

Cell クラス に include ActionView::Helpers::NumberHelper を追加します。

select タグ が使えなくてエラー

次のようなエラーメッセージが出ます。

private method `select’ called for #<XyzCell:0x007ff48f4febe8>

Cell クラス に include ActionView::Helpers::FormOptionsHelper を追加します。

参考: apotonick/cells Issue select form_helper doesn’t work in cells 4