昨晩の TODO
いくつか調べてみたのでメモ代わりにたれ流す。
set_field_names による列名の日本語化
list.rb の
set_field_names :title => 'タイトル'
ですが、コメントアウトして validation なエラーメセジ確認したらば、「Titleを入力して下さい」と出力。スバラシひ。
render メソドについて
rails/actionpack/lib/action_controller/base.rb にて発見。render は実は wrapper だった事が判明。
で、例えばこんなコード
render :partial => "person", :locals => { :name => "david" } (コメントより引用)
は、以下のメソド呼出しとなる? 若干、微妙な部分あり。(partial に何が格納されているのか)
render_partial(partial, ActionView::Base::ObjectWrapper.new(options[:object]), options[:locals], options[:status]) # partial : "person" # options[:object] : nil # options[:locals] : { :name => "david" } # options[:status] : nil
あるいは以下
render :partial => "person", :collection => @winners
は
render_partial_collection(partial, collection, options[:spacer_template], options[:locals], options[:status]) # partial : "person" # collection : @winners
ちなみに上記の render_partial* は rails/actionpack/lib/action_view/partials.rb にて定義されているみたい。で結果的に render というメソドが呼びだされている。
render("#{path}/_#{partial_name}", local_assigns)
引数をどう再構成しているのか、が微妙 (protected なメソドとして同じソースに定義されているが)。ただ、:partial なナニの先頭に _ を付けてるな、という事は分かるな。あと、上記の render ってドコで定義されてるのか不明 (もしかして rails/actionpack/lib/action_controller/base.rb ?)。
てか、ラッパとして振舞いつつ、最終的に戻ってくる、というのも (以下略
before_filter
うーん。とりあえず charset はヘッダ優先というのは理解できたんですが、何故に before_filter なのか、が微妙。てか、資料を色々見てて気が付いたのですが、config/environment.rb に
$KCODE = 'u'
を入れるの忘れてるな。(駄目
acts_as*
ソースは rails/activerecord/lib/active_record/acts/ 配下。
ERb なヘルパー達
rails/actionpack/lib/action_view/helpers/ 配下に投入されている。