コマンドラインツールを使用するコード生成 (非推奨)

注意: yiic shell のコード生成機能は、バージョン 1.1.2 以降、非推奨 (depricated) となっています。 この代りに、Gii において利用可能な、もっと強力で拡張性のあるウェブベースのコード生成機能を使用して下さい。

コマンドラインウィンドウを開いて、下記のコマンドを実行して下さい。

% cd WebRoot/testdrive
% protected/yiic shell
Yii Interactive Tool v1.1
Please type 'help' for help. Type 'exit' to quit.
>> model User tbl_user
   generate models/User.php
   generate fixtures/tbl_user.php
   generate unit/UserTest.php

The following model classes are successfully generated:
    User

If you have a 'db' database connection, you can test these models now with:
    $model=User::model()->find();
    print_r($model);

>> crud User
   generate UserController.php
   generate UserTest.php
   mkdir D:/testdrive/protected/views/user
   generate create.php
   generate update.php
   generate index.php
   generate view.php
   generate admin.php
   generate _form.php
   generate _view.php

Crud 'user' has been successfully created. You may access it via:
http://hostname/path/to/index.php?r=user

上記では、yiic shell コマンドを使って、スケルトンアプリケーションに対する修正を実行しています。 プロンプトに対して二つのサブコマンドを実行します。一つは model User tbl_user、もう一つは crud User です。 前者は tbl_user テーブルに対して User という名前のモデルクラスを生成します。 一方で後者は、User モデルを分析して、対応する CRUD 操作を実装するコードを生成します。

注意: 既に PDO および対応する PDO ドライバが有効になっていることを要求チェッカが示している場合であっても、 "...could not find driver" というようなエラーに出会うかも知れません。 そうなった場合は、次のように yiic ツールを走らせてみて下さい。

% php -c path/to/php.ini protected/yiic.php shell

ここで path/to/php.ini は正しい PHP ini ファイルを指すものです。

下記の URL をブラウズして、仕事の結果を楽しみましょう。

http://hostname/testdrive/index.php?r=user

このページは tbl_user テーブルのユーザのエントリ一覧を表示します。

Create User のリンクをクリックしてみてください。もし既にログインしていなければログインページに飛ばされます。 ログイン後は新規ユーザを追加するための入力フォームが現れます。入力を完了して Create ボタンをクリックしてください。 何か入力にエラーがある場合は、親切なエラーメッセージが表示されて、入力内容が保存されることを防いでくれます。 ユーザ一覧に戻ると、新しく追加されたユーザをリスト上で見ることが出来るはずです。

上記のステップを繰り返してユーザをたくさん追加してみてください。1ページに表示するには多過ぎるようになると、 ユーザ一覧のページが自動的にユーザエントリをページ分割して表示することに注目して下さい。

admin/admin を使って管理者としてログインすると、以下の URL によってユーザ管理ページを見ることができます。

http://hostname/testdrive/index.php?r=user/admin

このページは、便利なテーブル形式でユーザの一覧表を表示します。テーブルのヘッダセルをクリックすると、 対応するカラムをソートすることが出来ます。また、データの各行にあるボタンをクリックすると、対応する行のデータを 閲覧、更新、または削除することが出来ます。別のページへ移動することも出来ます。さらに、関心のあるデータを探すために、 フィルターを使ったり検索をしたりすることも出来ます。

これら全ての便利な機能が、一行のコードを書く必要もなく、手に入るのです。

User admin page

User admin page

Create new user page

Create new user page
$Id$

Be the first person to leave a comment

Please to leave your comment.