rails2.0で動いてたdonrailsを2.1に対応させてみた.前もひとつやったけどdonrailsってナニなことをやっているんだなあ,という気にさせられた..
- renderの途中のpathの扱い
Rendering template within ./MT/notes
Rendering notes/./MT/noteslist
というかんでpathの途中に /./ がはいるといかんようだ.
- return File.join(path, theme, filename)
+ if path == "."
+ return File.join(theme, filename) ## for rails2.1
+ else
+ return File.join(path, theme, filename)
+ end
- renderの処理では :inline とか :template を指定する.
application_helper.rbの中でrenderを呼んでいるときは :inline を指定してやる.
rails2.0のときは
- content += render("shared/attachments/picture", "atta" => atta)
こんなかんじでrender先でつかう変数は"hoge"でくくってやれば使えたが,rails2.1では
+ content += render(:inline => "shared/attachments/picture", :locals => {:atta => atta})
とまあ,:localsを使って指定しなければならない.
app/viewsの下でrenderを呼ぶときは,:template で指定してやる
-<%= render(don_get_theme("shared/category_title_list"), "category" => "donrails
") %>
+<%= render :template => don_get_theme("shared/category_title_list"), :locals =>
{:category => "donrails"}
- vendor/plugin/cache_testを削除
どうもrails2.1には対応していないのでざっくり削除.
というわけでなんとかなったのでrails2.2対応が次かな.