Yii - Gii
Gii là phần mở rộng, cung cấp trình tạo mã dựa trên web để tạo mô hình, biểu mẫu, mô-đun, CRUD, v.v.
Theo mặc định, các trình tạo sau có sẵn:
Model Generator - Tạo một lớp ActiveRecord cho bảng cơ sở dữ liệu được chỉ định.
CRUD Generator - Tạo bộ điều khiển và khung nhìn thực hiện các hoạt động CRUD (Tạo, Đọc, Cập nhật, Xóa) cho mô hình được chỉ định.
Controller Generator - Tạo một lớp bộ điều khiển mới với một hoặc một số hành động của bộ điều khiển và các khung nhìn tương ứng của chúng.
Form Generator - Tạo một tệp kịch bản dạng xem hiển thị một biểu mẫu để thu thập đầu vào cho lớp mô hình được chỉ định.
Module Generator - Tạo mã khung mà mô-đun Yii cần.
Extension Generator - Tạo các tệp cần thiết của phần mở rộng Yii.
Để mở công cụ tạo gii, hãy nhập http://localhost:8080/index.php?r=gii: trong thanh địa chỉ của trình duyệt web.
Chuẩn bị DB
Step 1- Tạo cơ sở dữ liệu mới. Cơ sở dữ liệu có thể được chuẩn bị theo hai cách sau:
Trong terminal chạy mysql -u root –p
Tạo cơ sở dữ liệu mới qua CREATE DATABASE helloworld CHARACTER SET utf8 COLLATE utf8_general_ci;
Step 2 - Định cấu hình kết nối cơ sở dữ liệu trong config/db.phptập tin. Cấu hình sau đây dành cho hệ thống được sử dụng hiện tại.
<?php
return [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=localhost;dbname=helloworld',
'username' => 'vladimir',
'password' => '12345',
'charset' => 'utf8',
];
?>
Step 3 - Bên trong thư mục gốc run ./yii migrate/create test_table. Lệnh này sẽ tạo sự di chuyển cơ sở dữ liệu để quản lý DB của chúng tôi. Tệp di chuyển sẽ xuất hiện trongmigrations thư mục gốc của dự án.
Step 4 - Sửa đổi tệp di chuyển (m160106_163154_test_table.php trong trường hợp này) theo cách này.
<?php
use yii\db\Schema;
use yii\db\Migration;
class m160106_163154_test_table extends Migration {
public function safeUp() {
$this->createTable("user", [ "id" => Schema::TYPE_PK, "name" => Schema::TYPE_STRING, "email" => Schema::TYPE_STRING, ]); $this->batchInsert("user", ["name", "email"], [
["User1", "[email protected]"],
["User2", "[email protected]"],
["User3", "[email protected]"],
["User4", "[email protected]"],
["User5", "[email protected]"],
["User6", "[email protected]"],
["User7", "[email protected]"],
["User8", "[email protected]"],
["User9", "[email protected]"],
["User10", "[email protected]"],
["User11", "[email protected]"],
]);
}
public function safeDown() {
$this->dropTable('user');
}
}
?>
Việc di chuyển trên tạo ra một userbảng với các trường sau: id, tên và email. Nó cũng thêm một vài người dùng demo.
Step 5 - Bên trong gốc dự án run ./yii migrate để áp dụng di chuyển vào cơ sở dữ liệu.
Step 6 - Bây giờ, chúng ta cần tạo một mô hình cho userbàn. Để đơn giản, chúng tôi sẽ sử dụngGiicông cụ tạo mã. Mở cái này raurl: http://localhost:8080/index.php?r=gii. Sau đó, nhấp vào nút “Bắt đầu” trong tiêu đề “Trình tạo mô hình”. Điền vào Tên bảng (“người dùng”) và Lớp mẫu (“Người dùng của tôi”), nhấp vào nút “Xem trước” và cuối cùng, nhấp vào nút “Tạo”.
Mô hình MyUser sẽ xuất hiện trong thư mục mô hình.