コードを書いてくらす

プログラミングについて書いてます。

Ruby on Rails チュートリアル その6

ずいぶん間が空いてしまったけど、ようやく11章完了。

今回は後半で画像アップロード機能を実装したんですが、本番環境でAWSのストレージを登録する部分については省略しました。アカウント取るだけなんだけど、まあいいやと思って。

さて、今回はMicropostの実装がメインでした。データベースの列の追加、アクションの指定、コントローラーの追加などはこれまでチュートリアルでやってきたことの復習のような感じ。ようやくこの辺の操作はさらっとできるようになってきたと思います。まあしばらくやってないと忘れてたりするんですけどね。


少し難しいのは既に実装したUserまわりの機能と連携する部分。連携といういか、User - Micropostは1:n の関係になるのでUserを削除したら関連するMicropostも削除する、などの制約があるところです。これまではデータベースの方で制約を定義したり、カスケードで削除アクションが起こるように設定しておいたりしてたんですが、railsではたった1行の宣言でできてしまうんですね。すごい。
Viewもオブジェクトに依存するコードを避けながら書けるので、部品ごとにコンパクトにまとまって見通しが良いです。


画像のアップロードも想像していたよりもかなり少ないコードで実装できてしまうので、本当にwebアプリケーションの要件に特化したフレームワークなんですね。
そして今回もテストがちょっと理解できていません。とりあえず通すことだけを念頭に、最後にざっとでも読み返してみようと思います。


あとは12章だけ。少し先になってしまいそうだけど、時間を見つけて進める予定です。
今日はこの辺で。