RailsでJSをあまりいじってこなかったので、Turbolinksの問題に直面したことがなかった。
しかし、今回Tweggerを作ってるなかで色々なJSの機能を搭載すると、どうも挙動がおかしくて、結局はTurbolinksが原因だった。

今日のやったこと、できたこと

  • プログラミング
  • 広告運用
  • ウェブ解析の商品化

明日への課題

  • プログラミング

今日のワーク

一昨日から風邪をひいたみたいで、頭痛いは喉痛いはで昨日はほとんど寝てた。
一昨日無理して普通に仕事したのがよくなかったのかもしれない。

今日は朝ゆっくりめに仕事を始めたけど、やっぱり辛いし、集中力が続かない。
特に咳が止まらないのが辛いよね。今の仕事場は不特定多数の人がいるので、周りにも迷惑かけてで申し訳ないなと。

とは言え、仕事にならないんで行くんですけどね。

今日は、Tweggerの画面の動作がおかしいのを修正しようと思ってた。
というか、テストがザルなので既存バグがあって、その修正と合わせて。

まず、has_manyとbelongs_toで関連付けると、自動的に必須項目になるっていうのを知らなかった。
belongs_toを設定した方の外部キーがNULLの可能性があったんだけど、何も考慮せずそのまま作ってた。

そして、普通にNULLでINSERTしようとしたらエラー出た。
という訳で、belongs_toの外部キーは必須項目になるので、以下のように記述する必要があるみたい。

belongs_to :hogehoge, optional: true

こうすることで外部キーがNULLでも登録ができるようになる。
勉強になりました。

それと、今回一番ハマったのが「Turbolinks」の扱い。
これ使ってると、JSの読み込み綺麗にするの難しかったり、onloadで読み込まれなかったり。

jQueryとバッティングするからgem入れなきゃいけないとか、どうなってるのって感じだけど。
まぁ、Turbolinks外すって方法もありなんだけど、今回は勉強のためにあえて使い続けてみた。

で、今回対応したのが以下の感じ。
まずはjQuery用のgemをinstall。

gem "jquery-turbolinks"

そして、summernoteやgoogle map用のスクリプトを書き換えた。

$(function(){
↓
$(document).on("turbolinks:load", function()

上は一般的なjQueryのonloadで動くイベントの書き方だと思うんだけど、turbolinksだと動かないので書き換えた。
で、これと同様の件で修正しないといけないのが、タグの入力機能で使ったライブラリ「bootstrap-tagsinput.js」。

これは中のソースを直接直さなきゃいけないかった。
具体邸には、本当に最後の行あたり。

$(function() {
 $("input[data-role=tagsinput], select[multiple][data-role=tagsinput]").tagsinput();
});
↓
$(document).on("turbolinks:load", function() {
 $("input[data-role=tagsinput], select[multiple][data-role=tagsinput]").tagsinput();
})

ここを書き換えれば無事にonloadで動くようになる。
まさかライブラリを書き換える必要があるとは!?って感じだったけど。

あとは、細かいところの調整をする必要はあったけど、これさえわかれば大体問題ないと思う。

いやー、リロードすると問題なく動くし、エラーも出ないから気のせいかな?くらいに思ってたらそんなことなかった。
でもちゃんと詰めると、勉強になりますな。。。

本当は今日はCoffeeScriptを勉強しようかなと思ってたんだけど、そんな時間はTurbolinksに全て持って行かれた。
途中でやめたらいいのはわかってるんだけど、それができないんだよねぇ。

そして、9月から作り始めた新しいサービスのデータ調整がひと段落したので、少しだけ運用に載せてみた。
そして広告を運用しようと思ってるんだけど、Yahooプロモーション広告ってCSVの流し込み機能ないのね。

一応、配布ツールはあるみたいなんだけどWin専用みたいで、自分はMacしかないのでどうしようかなと。
家にはデスクトップあるし、いざとなればノート買ってもいいんだけど悩むな。

そんな訳で、今日はまだ体調悪いので、プログラミングの勉強会も休んでます。
事務所変わってから行ける回数が大分減ったけど、今日はマジで辛いので休んだ。

先週末から大分疲れが溜まってて、やばいなぁ、限界だなって思ってたから案の定なんだけど。
免疫力落ちてるだろうし身体中痛いし、今回の風邪は熱は37度台だけど身体中痛くてしんどいです。

今日も早めに帰ってたくさん寝たいと思います。
なんか、風邪のせいか関係ないのかわからないけど、目がしぱしぱして、パソコン見続けるのが厳しい。

そんな感じ。