2013/08/19

Destroy (・∀・)

休みが長かったせいで頭がだるい。気持ちが沈んでいる。こんなときは面白そうな作業、簡単そうな作業、から手を付けて慣らすのが良いでしょう。
というわけでrailsアプリの修理。

railsアプリで登録したデータを削除するボタンがDestroyという名前。
デストロイという物騒な名前は如何なもんかと思ったが、scaffoldで作った時のデフォルトらしい。

その削除ボタンは滅多に押さなかったし、まさか動いてないとはしばらく気が付かなかった。で直そうと思ったらなかなか直らない、というか削除の仕組みがよく分からない。
controllerにはdestroyというメソッドで作ってあるのにリンクのところにはdeleteとなっているじゃん。リンク先のアドレスは表示用と同じアドレスだし、なにがどうなって動いてるのかさっぱり。

やっと分かったことはjquery.js、jquety_ujs.js、を読込んでないとデストロイが効かないということのようだ。

これらを配置すれば対処療法的に解決はするが、そもそもの原因はjavascriptの管理がassetとかいう訳分かんないのに変わってて訳分かんなかったので無視してたってこと、
とprototypeで作ってて「jquery...まぁいらねぇかなぁ」となったことだろうか。
別にJQueryが嫌いではないけどPrototype、ExtJS、は使ったことがあって、たまたまjqueryとは縁が無かったんで。jsライブラリにはそれぞれに特長があるだろうけど余程のことをするんでなければ、どれか一つだけを深く知ってた方が良いと思う(根拠は無いけど)。

まぁそれはそれとして、assetが本気でよく分かんないので、とりあえず静的配置で直しつつ、ちょっと真剣にasset使ったテストプロジェクト作って試さないとダメな感じ。

0 件のコメント:

コメントを投稿