心はいつも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

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

  関連記事

Railsを立ち上げる

RubyのアップデートとRailsのインストールが無事終わったので、いよいよRa …

no image
Railsの%

Rubyの%じゃなくてRailsの%です。 RailsではSQLを生成するwhe …

パーフェクトRuby 2章Rubyの基礎 2-6 モジュール

p57 2-6 モジュール 2-6-1モジュールの定義式 モジュールはインスタン …

no image
ブログデザイン変更しました

予告通り、本日中にブログのデザインを変更できました。WordPressのテーマT …

no image
RailsTutorial4.0を高速で復習する。終わりました。

作りたいサービスがあってコーディング開始していたのですが、もう1回振り返り学習し …

no image
formatはどこから取ってくる?

ruby on rails3プリケーションプログラミングの本の内容をruby2. …

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

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

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

9.4.2 destroyアクション、です。 テストを書く FactoryGir …

RailsTutorial4.0を高速で復習する。またまた5.1.2章の途中から。

RailsTutorial4.0を高速で復習する。5.1.2章の途中から。です。 …

詳解 Objective-C 2.0 第3版

Rubyの言語仕様を勉強する傍ら、Objective-Cも言語仕様ベースで勉強し …