FuelPHP - 既存DBからのScaffold

19,060 views

Published on

FuelPHP 勉強会 東京 vol.2用資料

Published in: Technology
1 Comment
2 Likes
Statistics
Notes
  • FuelPHP1.5で、当タスクをベースにしたfromdbタスクが公式に実装されました。
    https://github.com/fuel/oil/commit/fcb51348c7d4c401895d4e10119fd795fdc57a94
    FuelPHP1.5以降は、fromdbタスクをお使い下さい。
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total views
19,060
On SlideShare
0
From Embeds
0
Number of Embeds
13,650
Actions
Shares
0
Downloads
10
Comments
1
Likes
2
Embeds 0
No embeds

No notes for slide

FuelPHP - 既存DBからのScaffold

  1. 1. FuelPHP 勉強会 東京 vol.2 2012-09-23 http://atnd.org/events/31017- 既存DBからのScaffold - Mamoru Otsuka(@madmamor) http://madroom-project.blogspot.jp/
  2. 2. 通常のScaffold作成コマンド実行時にカラム名や型を指定する。例php oil g scaffold monkey name:string description:texthttp://docs.fuelphp.com/packages/oil/generate.html#scaffoldinghttp://press.nekoget.com/fuelphp_doc/packages/oil/generate.html#scaffolding利点MVCによるシンプルなCRUD機能を瞬時に作成出来る。欠点DDLを別途用意する開発スタイルにフィットしない。
  3. 3. 例えば...1.ER図作成ツールでER図を作成。2."1"からDDLを自動作成。DDL実行、テーブル作成。3.oilコマンドでScaffold作成。この時、作成済のテーブル定義を、再度入力する必要有り。
  4. 4. Taskの作成により解決を図る1.既存データベースに接続、テーブル情報を取得。2."1"のテーブル情報を、php oil g scaffold ... でコールされるFuelPHPのメソッドに渡す。参考php oil g scaffold ... は OilGenerate_Scaffold::forgephp oil g admin ... は OilGenerate_Admin::forgephp oil g model ... は OilGenerate::modelを、それぞれコールしている。
  5. 5. 既存DBからScaffoldを作成するTask概要名称: Scafdb (APPPATH/tasks/scafdb.php)ライセンス: WTFPLFuelPHP 1.3で動作確認済。ソース(Github)https://github.com/mp-php/fuel-myapp/blob/master/tasks/scafdb.phpTaskに関するドキュメントhttp://docs.fuelphp.com/general/tasks.htmlhttp://press.nekoget.com/fuelphp_doc/general/tasks.html
  6. 6. 使い方 1/2前提条件config/db.phpでDB設定が正しく行われている事。機能1: 指定テーブルに対するScaffold作成php oil r scafdb:scaf <table_name>機能2: 全テーブルに対するScaffold作成php oil r scafdb:scaf_allいずれも、-aのオプションを付与する事で、admin扱いとなる。
  7. 7. 使い方 2/2機能3: 指定テーブルに対するORMモデル作成php oil r scafdb:model <table_name>機能4: 全テーブルに対するORMモデル作成php oil r scafdb:model_allHELPphp oil r scafdbphp oil r scafdb:help
  8. 8. 使い方 補足確認済の利用可能オプション-f既存ファイルのoverride警告発生時に付与。--mysql-timestampDATETIME型のcreated_at/updated_at使用時に付与。--no-timestampcreated_at/updated_at未使用時に付与。注意事項ドライバがPDOの場合、エラーが発生する場合有り。APPPATH/migrations/に作成されるファイルは、不要。
  9. 9. 日頃の活動など。Twitterhttps://twitter.com/madmamorBloghttp://madroom-project.blogspot.jp/Android Appshttps://play.google.com/store/apps/developer?id=madroom+projectBandhttp://tamacens.rash.jp/https://www.facebook.com/tamacens
  10. 10. ご清聴ありがとうございました。

×