心はいつもAirPucci (空元気でもいいから)

毎日がPucciを着ているような気分

データベースのリファクタリング?

      2014/01/19


ruby on rails3プリケーションプログラミングの本の内容をruby2.0+rails4でやってみようと思っていましたが、正直あまりよい本ではありませんでしたので中断しました。理由は
・最終的になにができあがるかみせていない
・ひととおり技術の羅列、資料的
・チュートリアルになっていなく、どこを新規に記述すべきか明示していない。
・無理矢理進めようとしているせいか、あまりコーディングとして望ましい姿になっていない
・上と同じ原因で開発の考え方も間違ったものがみにつきそう
本書はおすすめいたしません。Railstutorial.jpをおすすめします。以下はメモ書き。

p91よりDBモデルを変更する手順です。いきなりDB dropですよ。

rake db:drop:all

これでdbがなくなります。

rails g model authors_book author:references book:references
rails g scaffold user username:string password:string email:string dm:boolean roles:string
rails g scaffold author user:references name:string birth:date address:text ctype:string photo:binary
rails g scaffold review book:references user:references body:text
rails g scaffold fun_comment author_no:integer name:string body:text deleted:boolean

AuthorsBooksのmigration。indexも削除しました。

class CreateAuthorsBooks < ActiveRecord::Migration
  def change
    create_table :authors_books, id: false do |t|
      t.references :author
      t.references :book

#      t.timestamps
    end
  end
end

rake db:migrateは成功しました。

さて、rails newするときにわざわざtestフォルダを作成しないように作りましたが、fixtureでテストデータを読み込ませるとこのことで、
/test/fixture/いろいろ.yml

testフォルダを作ったらサンプルコードからファイルをコピって来ます。

rake db:fixtures:load

なんの反応もエラーも成功もメッセージがでませんが、.ymlの中身がdevelopment.dbにコピペされています。

本ではターミナルからsqlを打てるようになる
rails dbconsole
が紹介されています。

私はてっとりばやくBASEでやっています。

ここが3章の山場でしょうか?
scaffoldして、できたDBをいきなりモデル変更。導入のためとはいえ、たぶんテスト書きながらのアジャイル開発だとこれはないだろうな。

git commitしておきます。

——

この後、進めようと思いましたが、Viewの開発で、form_tagのコントローラーとしてform_tagを設定する等、妙な記述が続いていましたので本書の使用はやめました。おすすめいたしません。

rails3と4の違いを確認することができてよかったとは思います。

 - テクニカル

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

  関連記事

Objective-C苦節3ヶ月アプリ作れるようになった

このブログairpucci.comのメニューにアプリ開発追加しました。 昨年秋よ …

no image
RailsTutorial4.0を高速で復習する。9.3.4章。

9.3.4パーシャルのリファクタリング、です。 テストパスしているのでリファクタ …

no image
G+ウィジェット設置してみました

(この投稿は別ブログameblo.jp/sweetfからの転載です) G+ウィジ …

初めてのRuby2章 2.2ハッシュ

ハッシュ ハッシュとは、オブジェクトにキーを対応させたもの。 C++,Javaで …

no image
RailsTutorial4.0を高速で復習する。5.6章。演習3問目。

5章最後の演習、3問目です。 リスト5.38に示すように、元のヘルパーメソッドに …

no image
iPhoneのメーラーが真っ黒になってしまった。

iPhoneのメーラーはiPhoneにデフォルトでついているメーラーを使っていま …

twitterと連携した写真のライブラリー

iPhoneを使うようになってから気軽に写真撮影し、そのままtwitter投稿す …

no image
Rubyの%を使う記法のうち、 %w

Rubyで%を使う記法は、たのるー(たのしいRuby)によると、以下の6通り % …

no image
恐ろしや、WordPressのDBパスワードは平文でおいてある

先ほどサーバーのDBをいじっていてですね、、久々だったのでDBパスワード忘れてし …

Ruby1.9+Rails3.2に加えて、Ruby2.0+Rails4.0のプロジェクトを作る。

Ruby1.9+Rails3.2のプロジェクトは作りましたが、その後、Ruby2 …