2012-02-02 13 views
1

私は私のRails 3.2.1のアプリのための私のモデルを生成するために実行する必要があるスクリプトファイルを単純なテキストに書い:データベース駆動型のWebサイトを作成するこの "ルビーの方法"は、最初にモデルですか?

rails generate model Champion name:string title:string story:string smallpicture:string largepicture:string spotlight:string 

rails generate model Item code:int name:string description:string cost:string 

rails generate model RecommendedItems mapname:string item1:int item2:int item3:int item4:int item5:int item6:int champion:references 

rails generate model GoodAgainst reason:string champion:references 

rails generate model BadAgainst reason:string champion:references 

rails generate model Spell name:string description:string effect:string cost:string range:string champion:references 

rails generate model Tip tiptext:string champion:references 

rails generate model ChampionStat name:string value:string modifier:string champion:references 

rails generate model User summonername:string email:string password:string confirmpassword:string location:string canvoteonfavoritechampion:boolean 

rails generate model FavoriteStream url:string user:references 

rails generate model ChampionRanking startweek:datetime endofweek:datetime champion:references 

rails generate model CustomBuilds item1:int item2:int item3:int item4:int item5:int item6:int champion:references 

は今、私は足場を生成し実行できることを認識し、私は私を考え出しを最初にモデルを実行し、必要に応じて足場を追加します。これは可能ですか?

これはRuby on Railsアプリケーションを作成する方法ですか?私は紙の上にデータベースを作成し、外部キー関係を作成し、foo:参照表記を使用して関係を記録しました。

これは間違いありませんか?

答えて

2

あなたのコマンドの構文が正しいと仮定すると、あなたがやっていることに客観的に間違っているものは何もありませんが、それはRailsが使用される方法ではないと思います。

あなたのやっていることは非常にagileではありません。アジャイルプログラミングでは、作業ソフトウェアを早期に、頻繁に提供することに重点を置いています。最初のいくつかの機能を動作させるために必要なテーブルとカラムの数を最小限に抑えるだけです。その後、これを行って顧客/ユーザーに表示したら、次に追加する機能を決定し、それに必要なテーブルと列を追加します。結局あなたは完全なアプリを持っています。

このアプローチにはいくつかの利点があります。これは、プロジェクトの後半部分で意思決定を改善するために、プロジェクトの初期段階でデータベース設計に関するいくつかのことを学ぶかもしれないからです。

この方法でアプリを開発する方法の例を見たい場合は、Agile Web Development with Railsとお読みください。

test-driven developmentです。アイデアは、壊れたテストを修正するコードを書くだけでよいということです。あなたがそうしていないように見えます。

0

Ruby on Railsアプリケーションを作成するには、間違いなく1つの方法です。

開発者、アプリケーションの複雑さ、およびデザインの完成度によって異なります。始めるには、既存のデータベースから直接スキーマをロードしてから、それぞれの関係のモデルを作成することができます(私の好み、Railsの命名規則を知っている限り)。関係は複雑になる可能性があるため、モデルを生成することは必ずしも最も理想的な選択ではありません。

FYI:Ryanは足場、レイアウトファイル、認証などを生成するのに便利な宝石があります。 https://github.com/ryanb/nifty-generators

関連する問題