ホームページ >バックエンド開発 >PHPチュートリアル >Yii Framework 公式チュートリアル補足 3 - 入門: 最初の Yii アプリケーションの作成
<br>
<br>
Yii を予備的に理解するために、このセクションでは最初の Yii アプリケーションを構築する方法を説明します。 yiic (コマンドラインツール) を使用して新しい Yii アプリケーションを作成します。 Gii (強力な Web ベースのコード ジェネレーター) は、特定のタスクの自動コード生成を完了します。 YiiRoot が Yii のインストール ディレクトリであり、WebRoot がサーバーのドキュメント ルート ディレクトリであると仮定します。 次のようにコマンドラインから yiic を実行します:
% YiiRoot/framework/yiic webapp WebRoot/testdrive
注: MacOS、Linux、または Unix システムで yiic を実行する場合、実行できるように yiic ファイルの権限を変更する必要がある場合があります。また、ターミナルのコマンド ラインで php コマンドを直接実行できる必要があります (ターミナルで php -v を使用してテストできます)。そうでない場合は、実行可能な php パスをシステム パスに配置する必要があります。さらに、このツールを次のように実行することもできます:
% cd WebRoot % php YiiRoot/framework/yiic.php webapp testdrive
これにより、WebRoot/testdrive ディレクトリに基本的な Yii アプリケーションが作成されます。このアプリケーションは、ほとんどの Yii アプリケーションで必要なディレクトリ構造を持っています。 コード行を記述せずに、ブラウザで次の URL にアクセスして、最初の Yii アプリケーションを確認することができます:
http://www.php.cn/
ご覧のとおり、このアプリケーションにはホームページ、連絡先ページ、ログイン ページの 3 つのページが含まれています。ホーム ページにはアプリケーションとユーザーのログイン ステータスに関する情報が表示され、連絡先ページにはユーザーが問い合わせを記入して送信するための問い合わせフォームが表示されます。また、ログイン ページではユーザーが最初に認証を行ってから、承認されたコンテンツにアクセスできるようになります。 詳細については、次のスクリーンショットを確認してください:
以下のツリー図は、アプリケーションのディレクトリ構造を示しています:
testdrive/ index.php Web 应用入口脚本文件 index-test.php 功能测试使用的入口脚本文件 assets/ 包含公开的资源文件 css/ 包含 CSS 文件 images/ 包含图片文件 themes/ 包含应用主题 protected/ 包含受保护的应用文件 yiic yiic 命令行脚本 yiic.bat Windows 下的 yiic 命令行脚本 yiic.php yiic 命令行 PHP 脚本 commands/ 包含自定义的 'yiic' 命令 shell/ 包含自定义的 'yiic shell' 命令 components/ 包含可重用的用户组件 Controller.php 所有控制器类的基础类 Identity.php 用来认证的 'Identity' 类 config/ 包含配置文件 console.php 控制台应用配置 main.php Web 应用配置 test.php 功能测试使用的配置 controllers/ 包含控制器的类文件 SiteController.php 默认控制器的类文件 data/ 包含示例数据库 schema.mysql.sql 示例 MySQL 数据库 schema.sqlite.sql 示例 SQLite 数据库 testdrive.db 示例 SQLite 数据库文件 extensions/ 包含第三方扩展 messages/ 包含翻译过的消息 models/ 包含模型的类文件 LoginForm.php 'login' 动作的表单模型 ContactForm.php 'contact' 动作的表单模型 runtime/ 包含临时生成的文件 tests/ 包含测试脚本 views/ 包含控制器的视图和布局文件 layouts/ 包含布局视图文件 main.php 所有视图的默认布局 column1.php 使用单列页面使用的布局 column2.php 使用双列的页面使用的布局 site/ 包含 'site' 控制器的视图文件 pages/ 包含 "静态" 页面 about.php "about" 页面的视图 contact.php 'contact' 动作的视图 error.php 'error' 动作的视图(显示外部错误) index.php 'index' 动作的视图 login.php 'login' 动作的视图 system/ 包含系统视图文件
ほとんどの Web アプリケーションはデータベースによって駆動され、私たちのテストアプリも例外ではありません。データベースを使用するには、まずアプリケーションにデータベースへの接続方法を指示する必要があります。アプリケーションの設定ファイル WebRoot/testdrive/protected/config/main.php を次のように変更するだけです:
<br>
return array( ...... 'components'=>array( ...... 'db'=>array( 'connectionString'=>'sqlite:protected/data/source.db', ), ), ...... );
上記のコードは、必要に応じて SQLite データベース WebRoot/testdrive に接続するように Yii アプリケーションに指示します /protected /データ/テストドライブ.db。この SQLite データベースは、作成したアプリケーション フレームワークにすでに含まれていることに注意してください。データベースには tbl_user という名前のテーブルが 1 つだけ含まれています:
<br>
CREATE TABLE tbl_user ( id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, username VARCHAR(128) NOT NULL, password VARCHAR(128) NOT NULL, email VARCHAR(128) NOT NULL );
MySQL データベースに変更したい場合は、ファイル WebRoot/testdrive/protected/data/schema.mysql.sql をインポートして作成する必要があります。データベース。
注: Yii のデータベース機能を使用するには、PHP の PDO 拡張機能と対応するドライバー拡張機能を有効にする必要があります。テスト アプリケーションでは、php_pdo 拡張機能と php_pdo_sqlite 拡張機能を有効にする必要があります。
ここからがエキサイティングな瞬間です。先ほど作成した tbl_user テーブルに対して CRUD (作成、読み取り、更新、削除) 操作を実装したいと考えています。これは実際のアプリケーションで最も一般的な操作でもあります。実際のコードを記述する手間を省き、ここでは強力な Web ベースのコード ジェネレーターである Gii を使用します。
Gii を構成する
Gii を使用するには、まずアプリケーション構成ファイルとして知られるファイル WebRoot/testdrive/protected/main.php を編集する必要があります:
return array( ...... 'import'=>array( 'application.models.*', 'application.components.*', ), 'modules'=>array( 'gii'=>array( 'class'=>'system.gii.GiiModule', 'password'=>'pick up a password here', ), ), );
次に、http:// にアクセスします。 www.php.cn/。ここでは、上記の設定で指定したパスワードを入力する必要があります。
ユーザー モデルの生成
ログイン後、モデル ジェネレーターのリンクをクリックします。以下のモデル生成ページが表示されます:
[テーブル名] 入力ボックスに、「tbl_user」と入力します。 [モデル クラス] 入力ボックスに「ユーザー」と入力します。次に、「プレビュー」ボタンをクリックします。これにより、生成される新しいファイルが表示されます。次に、「生成」ボタンをクリックします。 User.php という名前のファイルが protected/models ディレクトリに生成されます。後で説明するように、User モデル クラスを使用すると、オブジェクト指向の方法でデータ テーブル tbl_user にアクセスできます。
CRUD コードを生成する
モデルクラスを作成した後、CRUD 操作を実行するコードを生成します。以下に示すように、Gii で Crud Generator を選択します:
在Model Class输入框中,输入User。在Controller ID输入框中,输入user(小写格式)。现在点击Generate按钮后的 Preview按钮。CRUD 代码生成完成了。
访问 CRUD 页面
让我们看看成果,访问如下 URL:
http://www.php.cn/
这会显示一个tbl_user表中记录的列表。 点击页面上的Create User 链接,如果没有登录的话我们将被带到Yii Framework 公式チュートリアル補足 3 - 入門: 最初の Yii アプリケーションの作成。登录后,我们看到一个可供我们添加新用户的表单。完成表单并点击Create按钮,如果有任何输入错误的话,一个友好的错误提示将会显示并阻止我们保存。回到用户列表页,我们应该能看到刚才添加的用户显示在列表中。 重复上述步骤以添加更多用户。注意,如果一页显示的用户条目太多,列表页会自动分页。 如果我们使用admin/admin作为管理员登录,我们可以在如下 URL 查看用户管理页:
http://www.php.cn/
这会显示一个包含用户条目的漂亮表格。我们可以点击表头的单元格来对相应的列进行排序,而且它和列表页一样会自动分页。 实现所有这些功能不要我们编写一行代码!
<br>
以上就是Yii框架官方教程增补篇3——开始:创建第一个Yii应用的内容,更多相关内容请关注PHP中文网(www.php.cn)!
<br>