capsctrldays

2007-02-09 (金) [長年日記]

[Rails] SQLite3でデフォルトが勝手についちゃうお。

gemの挙動がおかしいのは直ったけど、なんかまだdefaultの扱いがおかしー。勝手に文字列になるー。Windowsだとうまくいったので、なんか環境がおかしいのかね。

$./script/generate model Book title:string
$rake db:migrate
$./script/console
>> book = Book.new
>> #<Book:0x41245e3c @new_record=true, @attributes={"title"=>"NULL"}>

ぬー。なにこの「@attributes={"title"=>"NULL"}」。

DDLを見てみるとこうなっとる。

SQLite version 3.3.8
Enter ".help" for instructions
sqlite> .schema books
CREATE TABLE books ("id" INTEGER PRIMARY KEY NOT NULL, "title" varchar(255) DEFAULT NULL);

この時点で「DEFAULT NULL」がついてることはまあいいとして(よくないけど)、オブジェクトをnewした時点で勝手に文字列にしちゃうのはイクない。イクない。

Rails 1.2.2とgem 0.9.2とsqlite3-ruby 1.2.1なのだけどなー。

ぎゃーーー勘違い

$apt-get remove libsqlite3-ruby

していい気になってたら、

$apt-get remove libsqlite3-ruby1.8

もやらないといけなかったみたい。。。。

すいませんすいません。

gemとapt-getの住み分けぐぁ。

これからはgemだけで管理するようにします。

$gem install sqlite3-ruby

[妄想] botがランダムに現れて「↓が○○する」と罰ゲームを指定するチャット

黒ひげチャット。

本日のツッコミ(全1件) [ツッコミを入れる]
1 コウイチ (2007-02-16 (金) 10:41)

私も痛い目にあってからRuby関係はgem、あとはそれぞれのパッケージ管理システムを使うようにしています。