ActiveModel::Modelを追加すると
ActiveModel::Modelを追加すると、Action PackやAction Viewと連携する機能をすぐに使えるようになります。ActiveModel::Modelをincludeすると、以下のような機能を使えるようになります。
モデル名の調査/変換/翻訳/バリデーション
ActionPackは何をしてくれるの
ブラウザからのリクエストを受け取って、それを処理して、レスポンスを返す。これがWeb アプリの基本。
(例)http://shop.com/store/add_cart/12 というURLにリクエストしたとしよう。
すると StoreControllerクラスのadd_cartメソッドが呼び出される。このときパラメータid=12 が一緒に渡される。
・ActionPackの大事な仕事その1
add_cartはid=12に対応する商品をカート(買い物かご)に入れる。 そして、続けて買い物できるようにページを作ってレスポンスとして返す。 もちろん、そうなるようにadd_cartを書くことになるわけ。
このようにURLを解析してアクションメソッドを呼び出してレスポンスを返すことがActionPackの大事な仕事その1。
・ActinPackの大事な仕事その2
ActionPack の大事な仕事その二はテンプレートを元にレスポンスを作ること。
ActionViewは何をしてくれるの
・ActionViewの大事な仕事
RailsではERBでHTMLテンプレートを書く。このテンプレートを書きやすくするのがActionViewの仕事。
るびま 日本Rubyの会 Rubyist Magagie
https://magazine.rubyist.net/articles/0008/0008-RubyOnRails.html