rails_tips
railsで、Resourceというmodelに画像を保存する様にしたんですが、 new_fileというメソッドでファイルから代入しようとできる様、 ちょっと変更する方法 alias :resource_old= :resource= define_method("resource=") do | value | if value.class == Action…
rake db:migrate:up VERSION=20080806001340 にて対象のバージョンのアップを実行出来る rake db:migrate:down VERSION=20080806001340 で、ダウンの実行 ちょっと便利だ。
dorubyに投稿しました。というわけで内容 railsのコントローラーにmoduleをinlcudeする時、 moduleにbefore_filterを書いても、AplicationControllerを 継承していないのでエラーが出ます。 moduleで共通化してるわけですから、before_filterもmodule側で 済…
雑雑草々 controller @places = Place.find(:all) view p.nameがselectで表示される文字列で、p.idがvalueに入ります。 会社の同僚の人が悩んでたみたいなので書いてみる。 select(method, choices, options = {}, html_options = {} )なので choicesの中に…
渡された複数のidで検索する必要がある時、 @users = User.find(params[:ids].split(/,/)) で検索しちゃ駄目だよ!早くなっちゃうからね! @users = [] params[:ids].split(/,/).each do |id| @users << User.find(id) end って検索しようね!idの数だけ検索…
railsのコントローラーで共通の処理を書こうとするとmodule化した所、 before_filterを定義しようとした時、AplicationControllerとか継承してないので エラーが出たので実装方法を確認。 という訳でやり方を晒す。 結論から言おうと、include時に呼び出され…
2008-07-11 application.html.erbにheadのtitleを書くと、全ページ同じタイトルになってしまう。↑をコメントアウトして、各コントローラのviewに記述してみた。 私は、共通のレイアウトでタイトルを表示するところは <title> <%= @title || "共通のタイトル" %> </title> と…
http://p0t.jp/archives/2008/07/rails-extrb.htmlというエントリがあったので 自分のブログに書いている、自分で使ってる便利メソッド系を纏めてみた。 rails_ext.rbに書いてるわけじゃないけど 入力画面も確認画面も同じrender :partial=>"form"を使えるヘ…
テストデータの管理 test_helper.rb見てて知ったんだけど、fixtureってcsvでも良いって知ってた? 知らなかった……。
入力画面の後に確認画面が来る時、入力画面はとしておいて、 確認画面はってしていると思いますが、一々両方用意するの面倒だ。 更に次いでに言うと、DRYくさくない。 嫌だなー。というわけで作ってみました。 action名称がconfirmが含まれているという前提…
先ほど新人から質問に来られて、buildの使い方で悩んでると聞かれたのですが、 「buildってあったっけ?newじゃね?」って状態でした。 そして色々と検証すると面白いメソッドだと分かったので紹介 class Parent < ActiveRecord::Base has_many :childs end …
railsのlink_toメソッドって便利ですが、最近教えてもらったメソッドに link_to_ifというメソッドが有る様です。 link_to_if(condition, name, options = {}, html_options = {}, *parameters_for_method_reference, &block) conditiongがtrueの場合、aタグ…
ちょっと必要なケースがあったので作ってみた。 class Sample < ActiveRecord::Base DEFAULT_DATAS={:name => "初期名前"} alias initialize_old initialize def initialize(attributes = nil) initialize_old(attributes) if @new_record && defined? DEFAU…
Rails的コメントアウト 〜 で挟め。と言うもの。 確かに、これだとHTMLを丸ごと囲める。
表現 使われるclass integer Fixnum float Float decimal BigDecimal datetime Time date Date timestamp Time time Time text String string String binary String boolean Object 確認したのでメモ
railsでhyperestraierを使うacts_as_searchableを最近弄ってるのでメモ。 インストールとかは省略。こちらが参考になるかも。*1 ドキュメントはここに関数の一覧がある。 そして、検索方法なんかはhyperestraierのユーザーガイド参照する。 複雑な条件式とか…
dorubyに使えるvalidate一覧というエントリを投稿した。
本日、メッセンジャで問い合わせもらった時の内容をここに どこが重さの原因かこちらも把握できてないのでね…… って言う話があったんで提案。 railsのプロジェクトを配置しているフォルダには、色々フォルダがあって その中にlogフォルダがあるんですが、pro…
layoutって普通にfilterと同じ様にメソッド指定させる事できたのね。 class ZenpouController < ApplicationController layout :set_layout def index end private def set_layout params[:layout] end end こんなん。 知らなかった。
shutdownコマンドとかで停止した後、pidファイルが残っている場合、 mongrel_cluster_ctl start --cleanや mongrel_rails cluster::start --cleanでpidファイルを削除してスムーズに起動する。
ActiveRecordのconditionsを綺麗に書くTips2つ(doruby)に書いてみた。 以前書いたActiveRecordでパラメータでconditions条件を追加しやすいヘルパ と、conditionsの最近知った書き方で2つ。
helperに書いているパラメータ保持リンク def link_parameter(name, option) param_datas = {} params.each{ |key, value| param_datas[key.to_sym] = value } option.each{ |key, value| param_datas[key.to_sym] = value } link_to name, param_datas end …