Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
FuelPHP - 既存DBからのScaffold
Search
Mamoru Otsuka
September 21, 2012
Programming
1
2.4k
FuelPHP - 既存DBからのScaffold
FuelPHP 勉強会 東京 vol.2用資料
Mamoru Otsuka
September 21, 2012
Tweet
Share
Other Decks in Programming
See All in Programming
ゼロダウンタイムでミドルウェアの バージョンアップを実現した手法と課題
wind111
0
170
GraalVM Native Image トラブルシューティング機能の最新状況(2025年版)
ntt_dsol_java
0
140
All(?) About Point Sets
hole
0
150
Core MIDI を勉強して作曲用の電子ピアノ作ってみた!
hypebeans
0
110
Web エンジニアが JavaScript で AI Agent を作る / JSConf JP 2025 sponsor session
izumin5210
4
1.7k
Honoを技術選定したAI要件定義プラットフォームAcsimでの意思決定
codenote
0
230
AI駆動開発ライフサイクル(AI-DLC)のホワイトペーパーを解説
swxhariu5
0
1k
Claude Code on the Web を超える!? Codex Cloud の実践テク5選
sunagaku
0
550
チーム開発の “地ならし"
konifar
7
4.8k
Atomics APIを知る / Understanding Atomics API
ssssota
1
150
Flutterチームから作る組織の越境文化
findy_eventslides
0
100
Flutterアプリ運用の現場で役立った監視Tips 5選
ostk0069
1
460
Featured
See All Featured
Site-Speed That Sticks
csswizardry
13
960
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Six Lessons from altMBA
skipperchong
29
4.1k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
192
56k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
Rails Girls Zürich Keynote
gr2m
95
14k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Optimizing for Happiness
mojombo
379
70k
Scaling GitHub
holman
463
140k
Transcript
FuelPHP 勉強会 東京 vol.2 2012-09-23 http://atnd.org/events/31017 - 既存DBからのScaffold - Mamoru
Otsuka(@madmamor) http://madroom-project.blogspot.jp/
通常のScaffold作成 コマンド実行時にカラム名や型を指定する。 例 php oil g scaffold monkey name:string description:text
http://docs.fuelphp.com/packages/oil/generate.html#scaffolding http://press.nekoget.com/fuelphp_doc/packages/oil/generate.html#scaffolding 利点 MVCによるシンプルなCRUD機能を瞬時に作成出来る。 欠点 DDLを別途用意する開発スタイルにフィットしない。
例えば... 1. ER図作成ツールでER図を作成。 2. "1"からDDLを自動作成。DDL実行、テーブル作成。 3. oilコマンドでScaffold作成。 この時、作成済のテーブル定義を、再度入力する必要有り。
Taskの作成により解決を図る 1. 既存データベースに接続、テーブル情報を取得。 2. "1"のテーブル情報を、php oil g scaffold ... でコールされる
FuelPHPのメソッドに渡す。 参考 php oil g scaffold ... は Oil\Generate_Scaffold::forge php oil g admin ... は Oil\Generate_Admin::forge php oil g model ... は Oil\Generate::model を、それぞれコールしている。
既存DBからScaffoldを作成するTask 概要 名称: Scafdb (APPPATH/tasks/scafdb.php) ライセンス: WTFPL FuelPHP 1.3で動作確認済。 ソース(Github)
https://github.com/mp-php/fuel-myapp/blob/master/tasks/scafdb.php Taskに関するドキュメント http://docs.fuelphp.com/general/tasks.html http://press.nekoget.com/fuelphp_doc/general/tasks.html
使い方 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扱いとなる。
使い方 2/2 機能3: 指定テーブルに対するORMモデル作成 php oil r scafdb:model <table_name> 機能4:
全テーブルに対するORMモデル作成 php oil r scafdb:model_all HELP php oil r scafdb php oil r scafdb:help
使い方 補足 確認済の利用可能オプション -f 既存ファイルのoverride警告発生時に付与。 --mysql-timestamp DATETIME型のcreated_at/updated_at使用時に付与。 --no-timestamp created_at/updated_at未使用時に付与。 注意事項
ドライバがPDOの場合、エラーが発生する場合有り。 APPPATH/migrations/に作成されるファイルは、不要。
日頃の活動など。 Twitter https://twitter.com/madmamor Blog http://madroom-project.blogspot.jp/ Android Apps https://play.google.com/store/apps/developer?id=madroom+project Band http://tamacens.rash.jp/
https://www.facebook.com/tamacens
ご清聴ありがとうございました。