2009-01-01から1年間の記事一覧

MobilePictogramConverterをiPhoneに対応させてみる。

CakePHPで携帯サイトを作っています。 このサイトをiPhoneにも対応させたのですが、携帯で入力した絵文字がiPhoneで表示されない。。。キャリア間の絵文字変換にはMobilePictogramConverterを使わせてもらっていますが、 これをiPhoneに対応させてみました。…

restful-authenticationの自動ログインの期限を延長する方法

ログインフォームで「次回から入力を省略する」にチェックするとログインしっぱなしになる、 という機能はよくあります。railsのrestful-authenticationにも「remember_me」という名前で実装されています。 但し、この機能「30日間限定」で実装されている…

CakeTestCaseでtestActionを実行すると別のページにリダイレクトされちゃう問題

ControllerのテストをCakeTestCase#testActionで書こうと思ったのですが、 テストするactionの中でredirectのところを通ると本当にリダイレクトされてしまいます。Google先生に聞いたところ、下記の記事が。cakephp1.2でControllerをテストする際のredirect…

テスト環境は別のDBを使う、という設定

テスト実行時はそれまで作ってたデータが消えてしまったりするのが嫌ですよね。 App::import('Model', 'User'); class UserTest extends User { $this->useDbConfig = 'test'; } とか定義して、このUserTestクラスをつかってUnitテストを書いたりしてみたん…

Xdebugを入れてCode Coverageを計算したらSegmentation fault発生

MacPortsでPHP5を入れた環境でXdebugを有効にしてCode Coverageを計算しようとしたら、真っ白い画面が表示されてしまった。ログをみても「Segmentation fault」としか出力されていない。。。 PHPはこういうのがあるんだよなー、とため息をつきながら調査開始…

Rails2.2.2でアプリを日本語化(i18n_generators, i18n_label)

Rails2.2.2で作ったアプリのエラーメッセージやlabelメソッドの出力を日本語化したかったので下記の手順で実行してみた。(1)翻訳ファイル(config/locales/*)を自動生成してくれるgeneratorをインストール sudo gem install amatsuda-i18n_generators cd R…

Rails2系アプリの管理機能を10分で作る方法

Rails 2.2.2で作ったWEBアプリの管理サイトを/admin/で始まるURLで作る手順をまとめました。 例えば「カテゴリー」(Category name:string position:integer)というモデルがあって、 そのマスターデータを管理したいという前提で。 (1)scaffoldをgenerate…

RedHat EL4にRedmineをインストール

RedHat EL4にRedmineをインストールする、というお仕事をしたので、作業ログを公開。 各種ライブラリはrpmで入れて、rubyやらgemやらはソースからビルドした。(1)Railsの実行で必要になるライブラリを入れる su wget ftp://mirror.switch.ch/pool/3/mirro…

RedHat EL4にrpmでSVNをインストール

yumで管理した方がいいのでは?という疑問はおいといて。 RedHat EL4 にrpmでSVNをインストールする、という作業をしたので手順を公開。 su cd /usr/local/src wget ftp://mirror.switch.ch/pool/3/mirror/centos/4.7/os/x86_64/CentOS/RPMS/apr-0.9.4-24.9.…

あれ?error_logにもブラウザにもエラーが出てこない。の対処

問題: CakePHPで作ったアプリがウンともスンとも言わない(ブラウザに白い画面が出る)。 php.iniでは下記の通り、エラーを報告する設定になっている log_errors = On error_reporting = E_ALL & ~E_NOTICE display_errors = On という状況。解決: core.ph…

さくらの専用サーバ(CentOS)にRailsの実行環境を作る

表題の件、手順をメモ。(1)各種インストール su yum install emacs yum install ruby yum install rubygems gem install rails -v=2.3.2 gem install passenger gem install ruby-devel gem install httpd-devel passenger-install-apache2-module (2)…

ActiveRecordのupdated_at、created_atを自動更新しない方法

railsのモデル(ActiveRecord)にはtimestamps(updated_atとcreated_at)というフィールドがあって、更新日時、生成日時が勝手に記録されて便利ですね。 でも特定のタイミングでこの自動更新(特にupdated_at)を止めたい場合があります。そんな時にはActiveR…

migrationの新機能(redo, rollback)

実はそんなに新しい機能じゃないっぽいけど、最近知ったのでメモ 最近適用したmigrationを元に戻す(downを実行してくれる) rake db:rollback 最新のmigrationを適用し直し(downとupをしてくれる) rake db:migrate:redo これまではmigrationのdownの部分…

自動生成したrspecのコードが失敗するときのメモ

rspecの低い( (1)route_forのパラメータは数字(integer)じゃなくて文字列(string)にする○ route_for(:controller => "comments", :action => "index", :entry_id => "1").should == "/entries/1/comments" × route_for(:controller => "comments", :…

rspec_nested_scaffoldでネストした構造のscaffoldが一発生成

例えばブログ記事(Entry)の下にコメント(Comment)が複数ぶらさがっているとしますよね。 そいつを操作するプログラムを作る場合、routes.rbの指定は map.resources :entrys do |entry| entry.resources :comments end とか指定するわけですよね。 でURLは「/…

ActiveRecordのhas_manyに:uniqを指定して重複を削除

ActiveRecordのhas_manyに:uniqを指定したときの動作を確認してみた。 グループの下に複数のユーザーがぶら下がっているテーブル構成を考える。 class Group ActiveRecord::Base has_many :users, :uniq => true end class User ActiveRecord::Base belongs_…

restful-authentication + aasm + forgot_passwordでWebアプリの骨を作る

今日は 『railsを使ってWebアプリを作ろう、という時、まずは何から作り始めますか? まずユーザ登録周りのところまではほぼ自動で作ってしまいましょうか。』 という趣旨のエントリーです。手順は下記2つのURLを参考というか、コピペさせてもらいました。 …

LocalPortfileの設定をしてMySQL+Sennaをインストール

以下2つのエントリーを読みつつ、MacにMySQL+Sennaの環境を作ってみました。MySQL+SennaをPrivatePortfileで入れてみたよ HowTo/LocalPortfileほとんど参照元x2のエントリーを混ぜた感じの手順でOKだったけど、パスの指定とかMD5のHashとか違ってました。…

emacs-railsを入れてみた。

emacsを使い始めましたんで、rails開発に便利だと言うemacs-railsを入れました。 参考にした記事はrails.el まとめ : ひげぽん OSとか作っちゃうかMona-です。下記のコマンドでemacs-railsをインストールします。 wget http://rubyforge.org/frs/download.ph…

SSH接続でドメインごとにアカウント情報を切り替える

人に歴史あり、といいますけど、 歴史があると、いろいろなプロジェクトやコミュニティに関わって いろいろな呼び名で呼ばれるようになるものです。いとうくん、いとうさん、まさしくん、まさし、など コミュニティや立場によって、僕の呼び名も変わります。…

はてなダイアリーはじめました

メインのブログは『人生を自由に生きるブログ』というのをやってますが、 MacBookやRuby on Railsなどに関する技術ネタについては、はてなダイアリーの方がよさげなので こちらに書くことにしました。ちなみに『カチャカチャ』というのは伊藤家の言葉で『パ…