今週のRails勉強記録と目標
今週は簡単なRailsアプリを素早く作る練習を再開。
コード書き始めたら、アレコレ地味に落とし穴に落ちて、いろいろと勉強になった!
先週入れたdebug力向上のためのgem(ツール類)が大活躍♪
目標は2週間で前回のコピーアプリくらいを作りたかったんだけど、1週間経った時点でかなりまだまだな感じ。。 相変わらずスピードに難あり。
Devise & OmniAuth (with Github) で予想してた以上に苦戦
あと、初めてOmniAuthをやってみたので、週の前半はそこにほとんど時間を取られてしまった・・
Devise & OmniAuth は、たくさん紹介記事とかもあるし、すぐできるかな〜と高をくくっていたけど、意外と苦戦・・ 最初に参考にした情報がOmniAuth ( Deviseなし ) だったので、読み替えがうまくできてなくてハマった・・
OmniAuthで参考になったページ
最終的にここのページの通りにやればよかった。。
Perfect RailsでOmniAuthやってる箇所と、RailsCastの簡単なOmniAuthの説明ページの内容を合わせながらやったところ、情報が古かった&Deviseとの連携がなかった、で無理やり読み替えしながらやったら、グチャグチャになってしまった。。
やはり公式を見るのが一番・・・(英語も普通に読みやすかった・・)
最初におもいっきり注意書きがあって、
Remember that config.omniauth adds omniauth provider middleware to your application. This means you should not add this provider middleware again in config/initializers/omniauth.rb as they'll clash with each other and result in always-failing authentication.
意訳:config.omniauth
が middleware を追加するので、config/initializers/omniauth.rb
で middleware の定義しちゃダメ!
って書いてある。。RailsCastとか、ちょっと古い情報だと、middleare定義するように書いてある文書があるので、一番最初に注意書きしてあるみたい。 読み飛ばし、ダメ;;
ちゃんと理解した!と思った Rails で Ajax の書き方でハマった・・
理解した!と思って、先週記事を書いた Ajax の扱いについて、何故か意図通りいかない事象に遭遇・・
結局ファイルのパスを間違えていた(途中でnamespaceに移動させたりしてるうちに、残念な状態になってた)だけだったのに、気づくまでにかなりの時間がかかってしまった。。
Railsでは「お約束の場所」「お約束の名前」からズレてしまうと大きな痛手を受ける。。
こういうロスタイムいかんなぁ。。
こっちも、もうちゃんと理解した!と思ってた partial の書き方でハマった・・・・
何が元々の形で、どう省略を許されているのか、という理解が足りなかった。。 これも発見までに地味に時間がかかってしまった。
Railsでは「よく使うパターンなので省略を許している」オプションが出てくることが多い。
しかも適当に情報を集めてると、
- もともとの形
- 省略が許されているからそうなっている形
- 普段あまり使わないオプションが入ってきた場合の形
の、どの状態なのかわからないまま使っていることになったりする。
これを意識して調べておかないと、省略形が元々の形だと思って、むやみにオプションだけを追加したら、動きません!状態になってしまう。
目標
いつも使うお約束のgemやRailsの機能を、イチイチ調べずにスラスラ書けるようになりたい。。