RoR

本番環境のPostgreSQLに格納されたデータを開発環境のSQLite3に持ってくる

RoR

Ruby on Rails 3.0で本番環境はPostgreSQL、開発環境はSQLite3を使うときのように本番環境はPostgreSQL、開発環境はSQLite3を使っている。デバッグなどのために本番環境のデータを開発環境に持ってきたいときがある。そこで、yaml_dbを用いてデータを移行す…

translation missingへの対応

RoR

i18nを使っているときに、Railsからのエラーメッセージで「translation missing: ja hogehoge ...」というのが表示された、これはActiveRecordからのメッセージに対応したja.ymlを用意していないから発生している様子。i18n_generatorsを使って、ja.ymlを生…

PostgreSQLメモ

RoR

データベース作成 PostgreSQLのスーパーユーザー(サーバーのスーパーユーザーではない)は、postgresなので、新たなユーザーやデータベースを作るときには、postgresになる。 % sudo su % su postgres % exit (rootに戻るとき) % exit (元のユーザーに戻…

Ruby on Rails 3.0.0から3.0.5へのアップグレード

RoR

環境 Debian GNU/Linux testing 準備 まずは、パッケージをまとめて最新状態にする。 % sudo aptitude update % sudo aptitude safe-upgrade % ruby -v ruby 1.8.7 (2011-02-18 patchlevel 334) [i486-linux] Ruby gemのアップグレード % sudo gem1.8 update…

Ruby on Raisで作ったソースコードを引き継ぐ際の覚書

自分が2年後に再び触るかもしれない。2年後の自分の記憶力を信じてはいけない .svn の削除 Subversionで管理している場合は、.svn を削除したソースコードも用意しておく。trunk以下にソースコードがあるとして、以下のようにする。 % cp -rp trunk hogehoge…

Active Record Query Interface 3.0 覚書

RoR

Active Record Query Interface 3.0に基づいて 2.3まで使っていたfind(〜)は、find(id)かfind(配列)しか使えない(つまり、id検索にしか使えない) find(:all)、find(:first)は廃止予定。allかfirstを使う find_by_user('文字列')は生き残り。 :conditio…

Apache + Passenger + Rails 3.0 で send_fileが0 byteのファイルを返すとき

RoR

はまった。Railsの黒魔術ぷりを久方ぶりに体感。 現象 開発環境をWebRick, SQLite3, Rails 3.0、本番環境を Apache + Passenger, PostgreSQL, Rails 3.0にしていたところ、開発環境においては、send_fileでファイルをちゃんとダウンロードさせられたのだけれ…

Rails 3.0 の レコード取得返り値

RoR

株式会社ウサギィwiki:ruby/rails/RailsGuidesをゆっくり和訳してみたよ/Active Record Query Interfaceによれば、Rails 3.0から導入されたレコード取得メソッド where, select, group, order, limit, offset, joins, includes, lock, readonly, from の返…

PostgreSQLのデータベースをcronを使って自動バックアップする

バックアップ 同じサーバーを使っている悪い人がいた場合には良くない方法です。 PostgreSQLのスーパーユーザーが postgres Railsを動かしているユーザーが hoge プロジェクトの設置場所が ~hoge/rails_root/ とする。 プロジェクトのデータベース名は hoge_…

Rails 3.0で gettextを使う

RoR

Ruby-GetText-Packageを使って多言語化をしていたのだけれども、Rails 3.0で動くかよくわからなかったので、Rails 3.0で動くGetTextのGemライブラリーを探したところ、fast_gettextというライブラリーを見つけた。 環境 Debian GNU/Linux Squeeze ruby 1.8.7…

datetime形式のフィールドのタイムゾーン

RoR

Rails 2.3.8 では、config/environment.rbのconfig.time_zoneをコメントアウトして使っていた。その結果として、データベースに格納されるdatetime形式の値は、Railsを動かしているサーバーの時間と一致していた。Rails 3.0にしたら、config/application.rb…

セレクトタグの使い方

RoR

あんまりわからなかったのでメモ。 参考 ruby/rails/RailsGuidesをゆっくり和訳してみたよ/Action View Form Helpers ハッシュや配列からoptionを作成する場合 select_tagとoptions_for_select を使う。 coutryHash = {"Japan" => "Tokyo", "China" => "Beij…

Ruby on Rails 3.0で本番環境はPostgreSQL、開発環境はSQLite3を使うとき

RoR

2系ならば、config/database.ymlの設定だけで変更可能だが、Rails 3.0ではBundleでgemライブラリーを管理するため、本番環境と開発環境で、読み込むライブラリーを変える必要がある。Bunlde: Gemfileによると、プラットフォームや環境の違いにより読み込むラ…

Debian GNU/Linux Squeezeで Rails 3.0 + PostgreSQL

Rails 3.0のインストールはこちらを参照のこと。 Debian GNU/Linux Squeezeで Ruby on Rails 3.0 on Ruby 1.8.7 PostgreSQLのインストールとデータベース作成 % sudo aptitude install postgresqlPostgreSQLのスーパーユーザー(サーバーのスーパーユーザー…

Rails 3.0インデックス

自分のメモのために自分で書いた Ruby on Rails 3.0のエントリーについてインデックス化しておく。 参考リンク Ruby on Rails API Ruby on Rails 3.0 Release Notes おもしろWEBサービス開発日記:Rails 3.0 リリースノート和訳 - 前編 おもしろWEBサービス…

異なる環境でBundlerで管理しているgemライブラリーに関するトラブルが生じたとき

RoR

Rails 3.0からは、gemライブラリーをつかうとき、Bundlerというシステムで管理している。使いたいgemライブラリーをGemfileに明記しないといけない。それで、2つの異なる環境で同じRailsプロジェクトを動かそうとしたとき、開発環境と本番環境でgemライブラ…

passenger 2.2.7 から 2.2.15へのアップグレード

RoR

基本的には Apache + Passengerのとおりなのだけど、少してこずったのでメモ。環境はDebian GNU/Linux squeeze。 passengerのバージョンアップ まず、環境を最新にする。 % sudo aptitude update % sudo aptitude safe-upgraderubygemsとrailsを最新にする。…

"devise with all the bells and whistles" を作ってみる

RoR

なんとなく使い方が分かってきたので、リベンジ:Rails 2.3RC1で”Restful Authentication with all the bells and whistles”をやってみるをdeviseでやってみる。ちなみに "with all the bells and whistles" はあんまり良い意味ではないみたい。 英語表現ア…

Rails 3.0用にrestful_authentication から deviseに移行してみる

RoR

Rails 2.3.8では、ユーザー認証にrestful_authenticationを使っていたのだけど、Rails 3.0ではdeviseが人気のようなので、こちらに移行してみる。 追記 "devise with all the bells and whistles" を作ってみるとして、リベンジ:Rails 2.3RC1で”Restful Aut…

Debian GNU/Linux Squeezeで Ruby on Rails 3.0 on Ruby 1.8.7

RoR

既にRuby on Rails 2.3.8が入っているとする。まずは、更新。 % sudo aptitude update % sudo aptitude safe-upgradesqlite3-ruby-1.3.1をインストールするためにruby-dev1.8とlibsqlite3-devのインストールが必要なのでインストールする。 % sudo aptitude …

Debian GNU/Linux Squeezeで Ruby 1.9.2 + Ruby on Rails 3.0

Ruby on Rails 3.0が登場したので、Ruby 1.9.2も合わせて導入する。 最初に依存性に泣かないためにDebainのパッケージを最新に。 % sudo apttitude update % sudo aptitude safe-upgrade次にRuby 1.9.2をインストール(現状だと、ruby1.9.1としてインストー…

ya2yamlを使ってカラムにYAML文字列を格納していたらar_extractorでうまく出力できない

RoR

大変ながったらしいタイトルですみません。 環境 Debian GNU/Linux squeeze Ruby 1.8.7 Rails 2.3.8 SQLite3 3.6.23.1 ya2yaml 0.29.2 ar_extractor 1.3.3 現象 sampleHash = {v => {u => "1", v => "0", w => "0", x => "0", y => "1", z => "0"}, z => {u …

Ruby on Rails 2.3.8 で jsMathを使う

RoR

まだ、使い始めたばかりだけどとりあえずできたのでメモ。環境は以下のとおり。 Debian GNU/Linux squeeze Ruby 1.8.7 Ruby on Rails 2.3.8 SQLite3 3.6.23.1 実験用プロジェクトの作成 % rails math % cd math % ruby script/generate scaffold equation ti…

Gruff

RoR

Debian GNU/Linux Squeeze Ruby Gems 1.3.5 Ruby on Rails 2.3.5 まず、ImageMagickをインストール。 # aptitude install imagemagickつぎにrubyのImageMagickライブラリーであるrmagickをインストール。 # aptitude install librmagick-ruby次にgruffをイン…

Debian GNU/Linux Squeeze上でRedmineを動かす

環境 Debian GNU/Linux Squeeze (testing) Apache 2.2.14 SQLite3 3.6.23 Ruby gems 1.3.5 Ruby on Rails 2.3.5 Passenger Apache経由で動かす Official Site: RedmineInstallに書いてあるインストール方法にしたがい、インストールする。まず、Redmine Offi…

NetBeansにRuby-GetTextを導入

RoR

ruby 1.8.6だとWindowsのパス表現でエラーがでる。1.8.7なら問題ない。 今回は以下の環境で実施した。 Ruby: RubyInstallerForWindows 1.8.7 Ruby on Rails 2.3.5 Ruby gems 1.3.5 GetText Rails 2.1.0 参考 GitHub:gettext_rails よたらぼ 保管庫:Ruby on…

リベンジ:Rails 2.3RC1で”Restful Authentication with all the bells and whistles”をやってみる

RoR

何度も挑戦して挫折している Restful Authentication with all the bells and whistles (new 9/05/08) をやってみる。ただし、OpenIDの導入前まで。 チュートリアルの実施環境 元のチュートリアルはMySQLを使っているけど、私はSQLite3を使った。 % uname -a…

リンク:Ruby on Railsの認証プラグイン

RoR

調べたらrestful_authentication以外にも結構提案されているみたい。 restful_authentication 今現在のデファクトスタンダード。モデルからビューまで自動生成機能がある。 github:restful_authentication(英語) 作者によるチュートリアル(英語) Rails …

LinuxとWindows(NetBeans)でRailsプロジェクトを共有する

RoR

やりながらメモ。 Linux側の状況 emacs + Rinariで開発。各ソフトウェアのバージョンは以下のとおり(カッコ内はバージョンを調べるコマンド)。 Ruby 1.8.7 (ruby -v) Ruby on Rails 2.3.2 (rails -v) Ruby Gems 1.3.1 (gem1.8 -v) SQLite3 3.6.18 (sqlite3…

Apache + Passenger

RoR

Debian GNU/Linux squeezeとrubygems 1.3.4とruby 1.8.7でインストール。まず、passengerを導入。 % sudo gem1.8 install passenger設定する。 % sudo passenger-install-apache2-moduleapache2-prefork-devを入れなさいと言われるのでインストールする。 % …