スキップしてメイン コンテンツに移動

CheckListApp#3 チェックオブジェクト作成

チェック項目モデルを作ります。属性は、

  • タイトル(文字列)
  • コンテンツ(長い文字列)
かなり寂しいけど、まずはこれで。
ホントは、登録ユーザとか、リンクとか、いろいろやりたいけど、まずはこれで。目標は、早く形をつくる事。形ができたら、肉付けをしていきます。でも、ユーザー関連までは、やらないと、リリースできないな。。
$ rails g model Check title contents
$ rake db:migrate
属性の型を指定しないと、string型になるらしいです。勢い余って、contentsもstring型にしてしまった。。text型に変えなくては、と思ったら、簡単には変えられないんですね・・。C言語のクラスとは違うんだな。。残念。

ちゃんとやる場合は、別の属性を用意して、入れ替えるみたいだけど、今はまっさらから作っているところなので、まずはモデルを消しちゃいます。

$ rails destory model Check
ファイル(app/models, db)を見た感じ、消えてる風なので、これで行ってみます。ダメだったら、やり直そう。2回目は1回目よりずっと早く進むから、きっと大丈夫。この事に気がついてから、いろんな事に対して心が楽になったきがします。

さて、やり直します。

$ rails g model Check title contents:text
$ rake db:migrate
残念、ダメだ・・・。何だ、すでにテーブルができてるって言われる。 くそー。全てをイチから作り直した方が早そうだけど、、もう少し粘ってみます。destory した後に、一旦 db:migrate をかけてみよう。
$ rails destory model Check
$ rake db:migrate
$ rails g model Check title contents:text
$ rake db:migrate
ダメだな。調べてみよう。。

[数分後]

分かりました。 rake db:migrate:reset でいいんだ。

$ rake db:migrate:reset
ふぅ。とりあえず、うまく行きました。

今は、まっさらな状態だからいいけど、一回作っちゃうと、面倒なんですねー。設計が大事なのか。。C++の感覚と大分違う。ちょっと、コワイなー。

次は、一覧と作成フォームをやってみようと思います。


参考

コメント

Amazon Affiliate