InvalidAuthenticityToken

Railsが生成しない Formからアクションへ入るときなどに InvalidAuthenticityTokenがでるときの対処。例えば、トップページは静的に Formを書いておいて、そこから /sessions/create に入るなど。書いておかないと毎度毎度忘れてしまうので。 Controller cla…

translation missing:が出たとき

Rails2.2.2で、こんな(↓)エラーが出たとき、どこをチェックすればいいかのメモ。 translation missing: ja, activerecord, errors, template, header translation missing: ja, activerecord, errors, template, body config/locales/ja.yml 『』あたりで I1…

クラスのメソッド

クラスメソッドとインスタンスメソッドがわかっているようで、いつの間にかあやふやになってしまうので後で迷わないように整理しておく。 インスタンスメソッド class User ActiveRecord::Base def not_using_openid? identity_url.blank? end end User.new.…

コントローラとヘルパでメソッドを共有

コントローラとビューで同じメソッドを使いたいことがわりとあります。Validationとか文字列変換とか。そういうとき、コントローラ部(application.rb)に置くか、ヘルパ部(application_helper.rb)に置くか悩むところですが、メソッド自体はたぶん軽量なので(…

submit_tagの :disable_withオプション

Rails2.1.0で動いていたフォームの挙動が、Rails2.2.2でおかしくなったので調べてみたら、Actionpackの問題(バグ?)だったというオチ。 現象 まず、『:disable_with => '登録中です...' %>』というコードがIE8(7,6も同じだと思う)でエラーになります。 『hid…

link_toを角丸のボタン風に表示

CSSでリンクを「Wiiブラウザっぽいボタン」にします。「Wiiブラウザっぽい」っていうのは、角丸でマウスが乗ったときにボタンの周りに色(オレンジ)がつくもののようです。(Wii持っていないのでわかりません) 使い方 ここ(→ http://www.hedgerwow.com/360/dht…

IEでfavicon.icoが表示されないとき

久しく書いていなかったのでリハビリを兼ねて備忘録的なものを。 favicon.ico ちゃんと public/favicon.ico を置いて、<link rel="shortcut icon" href="/favicon.ico"/>としているにも関わらず、ファビコンが表示されないことがあります。favicon.icoが壊…

validator.jsで出てくる吹き出しを透過にする

フォームのエラーチェックに、こちら(フォームの入力エラーを吹き出しで教えてくれる JavaScript)を便利に使わせていただいているのですが、エラーのとき表示される吹き出しの背景色が白じゃないときだけはちょっとイケてないかなぁと思ってました。で、吹き…

ActiveSupportのHash拡張

認証系のソースを読んでいると『options.reverse_merge! :title => ip_addr』というのが出てきて、こんなの Rubyにあったっけと思って調べたら、やっぱ Rubyにはなくて ActiveSupportのクラス拡張でした。せっかく調べたのでまとめ。 Hash#reverse_merge, Ha…

jQueryで link_to_remoteを使う

特に強い動機があったわけじゃないんですが、Extended-Bort をベースにした Railsで開発を始めてしまったので、必然的に prototype.js じゃなくて jQuery.jsに移行することになりました。 で、prototype.js環境のものをポツポツと移行していったんですが、li…

エラーのとき fieldWithErrorsが突っ込まれる

ActiveRecordのValidationでエラーになると該当箇所に<div class="fieldWithErrors">が勝手に突っ込まれます。これはこれでありがたいのですが、<div>で突っ込むことになっているため、勝手に改行されて入力フォームのレイアウトが崩れるのが玉に傷。突…

update_attribute!はない

update_attribute、update_attributes、update_attributes!はありますが、update_attribute!はありません。 違い update_attributeは Validationなしの save。update_attributes(!)は Validationあり(普通)の save(!)。!が付くとエラーのとき、例外があがり…

url_escape()の使いどころ

入力フォームから別のアクションにリンクでリダイレクトするとします。このとき入力フィールドの値を持っていきたいんですが、リダイレクトすると paramsはクリアされて持っていけないと。ちょっと汚い手ですが、こういうことをよくやります。 link_to '■ パ…

WordPress MUのインストール(4)

インストールは済んだのですが、いざブログを作ってみると、登録メールが送られてきませんでした。 どうやら、インストールしたサーバに Postfixのようなメールサーバがないといけないようです。このためだけにメールサーバを入れたりすると(設定に穴があっ…

WordPress MUのインストール(3)

さて、基本的な『WordPress MU』のインストールは終わったわけですが、これだとマルチユーザではあるもののマルチドメインになっているわけではありません。次はマルチドメインに挑戦です。 ※ 結論を先に書いておきますが、プラグインを入れる方法ではどうし…

WordPress MUのインストール(2)

下準備が終わったので『WordPress MU』自体のインストールを始めます。が、実は面倒臭いのはここまでで、以降はトントンと進んでいくはずです。 インストール 『http://wpmu.5-55.jp/index.php』にアクセスするとこのような画面が表示されます。 ここで入力…

WordPress MUのインストール(1)

複数のブログを管理することになりそうなので、WordPressのマルチユーザ版『WordPress MU』のインストールをしてみることにしました。 ダウンロード Blog Tool and Publishing Platform から最新版(wordpress-mu-2.6.5.zip)をダウンロードします。 WordPress…

migrateでのintegerの扱い

2009年はエコの年なので(いま決めました)、もったいないを重点的に追求していきます。まず手始めに、DB(MySQL)で安直に int(11)を使っているケースを弾劾します。 Rails2.1.0の場合 class CreateTests ActiveRecord::Migration def self.up create_table "te…

ケアレスミス

カンマに注意 hs = {} hs["1"] = "11" hs["2"] = "22", hs["3"] = "33" hsは、{"1"=>"11", "2"=>"22", "3"=>"33"}を期待しますが、こんなふうに文末に余計なカンマがあったりすると、{"1"=>"11", "2"=>["22", "33"], "3"=>"33"}になってしまいます。Ruby恐ぇ…

1対多のときの順序

has_many関係にあるときの「多」の方に順序がついている場合、つまり明細行を表示順でアクセスしたいときなどに、これまで findしてからいったん Arrayに入れて表示順で sortして、みたいなことをやってて「ほんとにみんなこんな面倒くさいことやってんのか…

WordPress2.7へバージョンアップ

WordPressを 2.6.3から 2.7へバージョンアップしたので、そのメモ。プラグインなどを入れたりカスタマイズしたりしてないので、特に難しいところはありません。(プラグインを入れている場合はプラグインを使用中止にしてからやらないといけないようです) MyS…

Mailが送れなくて焦った件

「Mailが送れなくて焦った」ということがあったのですが、物語風に頭から書いていってたところ、参考にしようとして見たページのFlashのせいで IE(7)が丸ごと落ちて、はてなのバックアップも機能してなくて、ちょっと不貞腐れているので箇条書きします。 Ubu…

の不可思議なエラー

NetBeansで Railsを書くようになってから、事前(実行前)にエラーや警告がわかるようになってすごく助かるんですが、jsの「filter:alpha(opacity=75);」を「予期しないシンボルが見つかりました:"="」とするのはどうにかならないでしょうか? ということでは…

近所の不動産情報

たぶんビルゲーツでも分割にしてくれというと思う。1兆1830億円って。

番号文字列をインクリメントする

"Z10-036K"みたいな文字列があったとして、"Z10-999K"の次は"Z11-000K"になってほしいよねということで書いてみました。 ソース(というほどのものではない) Stringクラスに defineするので既存のメソッドをオーバーライトしないように、なるべくダサい名前…

NetBeansでSubversion

WindowsのNetBeans6.5でちょっとだけはまったのでメモ。 チェックアウトのところでこんなふうにリポジトリURLとトンネルコマンドを設定するんだけど、ユーザ名を間違えるとこんなエラーが出る。 自分の場合、Subversionのユーザ名を svnにしたのをすっかり忘…

IE(7)のランタイムエラー検出

IE(7)の表示はなんか間が抜けた感じがして好きじゃないので、もっぱら Firefoxばかり使ってしまっているのですが、世の中的には IE(7)の方がメジャーらしいので、テストのときは努めて IE(7)を使うようにしています。(Firefoxで見た目を最適化すると IEで見…

Rails(2.1.0)のtimezone

Rails(2.2.2)が11/21にリリースされたのはわかっていますし、インストールも終わっているんですが、Rails(2.1.0)の話です。 timezone config/environment.rbというファイルに config.time_zoneという指定があって、これを'Tokyo'にすると幸せが来そうな感じ…

特許についてのメモ

以下のリンク先にはそれぞれ有用な情報がありますが、この記事自体には有用な情報はありません。 特許庁 http://www.jpo.go.jp/indexj.htm http://www.jpo.go.jp/index/chusho_kojin_shien.html ウィキペディア 日本の特許制度 - Wikipedia ソフトウェア特許…

Railsの特定バージョンをフリーズ

先日、Extended-Bortを入れてみようと思い立って、いろいろと試行錯誤していたのですが、Extended-Bortは Rails 2.2.0インクルードで、2.2.0では「config.i18n.default_locale = :ja」を指定するとエラーになるので、これを 2.2.2にすべく、勢いで Rails 2.2…