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

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

  関連記事

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

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

Mac miniの液晶モニターにDell U2713HM使っています。

次期モデルが出るかもしれないのにMac miniを買って、自分でメモリを16Gに …

ブログをアプリを使ってiPhoneから更新

この前の投稿と、前の前の投稿はiphoneから行いました。ノートPCだとブログ投 …

herokuのWe’re sorry, but something went wrong.に苦しんだ

Rails3.2環境に戻してアプリを作ろうとしています。 herokuにpush …

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

9.2.3フレンドリーフォワーディング、です。 ログオンしていないユーザーが編集 …

Railsを立ち上げる

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

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

10.3.2マイクロポストを作成する、です。 テストを書く micropostの …

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

10.3.3フィードの原型、です。 仕様の確認 ユーザーログイン後、トップページ …

no image
ToDoの管理方法

東大生はノートがきれいだとか、、 きれいに書いている暇があったら、頭に書いて覚え …

RailsTutorial4.0を高速で復習する。10章。

第10章ユーザーのマイクロポスト、です。 has_many、belongs_to …