ホームページ >PHPフレームワーク >ThinkPHP >ThinkPHP6 でメニュー管理操作を実行するにはどうすればよいですか?

ThinkPHP6 でメニュー管理操作を実行するにはどうすればよいですか?

王林
王林オリジナル
2023-06-12 08:54:441230ブラウズ

ThinkPHP6 は、効率的、安全、安定した PHP 開発フレームワークであり、優れた MVC (Model-View-Controller) 設計パターンを採用し、開発者に柔軟でシンプルな開発方法を提供します。その助けを借りて、開発者は強力な Web アプリケーションを迅速に開発できます。

メニュー管理は、ほとんどの Web アプリケーションにとって不可欠な機能です。この記事では、ThinkPHP6 でメニュー管理操作を行う方法を紹介します。

  1. メニュー モデル ファイルの作成

まず、メニュー モデル ファイルを作成する必要があります。次のコマンドを使用して、ターミナルでメニュー モデル ファイルを作成できます。

php think make:model admin/Menu

このコマンドは、app の下の admin サブディレクトリに Menu を作成します。ディレクトリ .php ファイル。これはメニュー モデル ファイルとして使用されます。

  1. メニュー コントローラー ファイルの作成

メニュー コントローラー ファイルの作成を続ける前に、メニュー テーブルのデータベース移行ファイルを作成する必要があります。次のコマンドを使用して、create_menu_table という名前の移行ファイルを生成できます。

php think make:migration create_menu_table

このコマンドは、databasemigrations サブディレクトリにあります。ディレクトリ に移行ファイルを作成します。

次に、移行ファイルを実行し、次のコマンドを使用してメニュー テーブルを作成する必要があります:

php think migrate

これで、次のコマンドを使用してターミナルにメニュー コントローラ ファイルを作成できます:

php think make:controller admin/Menu

このコマンドは、app ディレクトリの下の admin サブディレクトリに Menu.php という名前のコントローラ ファイルを作成します。

  1. メニュー管理ビュー ファイルの作成

メニュー管理ページを表示するには、いくつかのビュー ファイルを作成する必要があります。次のコマンドを使用して、index.html という名前のビュー ファイルを作成できます。

php think make:view admin/menu/index

このコマンドは、app# の下の admin に配置されます。 ## ディレクトリ。サブディレクトリ内にサブディレクトリ menu を作成し、その中に index.html という名前のビュー ファイルを作成します。

index.html では、HTML、CSS、JavaScript を使用して、美しく使いやすいメニュー管理インターフェイスを作成できます。

    メニュー管理オペレーションの記述
メニュー モデル、コントローラー、ビュー ファイルの作成が完了したので、メニュー管理のオペレーションを記述します。

4.1 インデックス操作

app/admin/controller/Menu.php ファイルでは、データベース内のメニュー データを読み取るインデックス操作を記述することができます。そして、それらを表示するためにビュー ファイルに渡します。

public function index()
{
    $menus = MenuModel::select();
    $this->assign('menus', $menus);
    return $this->fetch('index');
}

index.html ビュー ファイルでは、foreach を使用してメニュー データをループし、ページ上に表示できます。

4.2 操作の作成

新しいメニューをデータベースに追加し、完了時にユーザーをメニュー管理ページにリダイレクトする作成操作を作成できます。

public function create()
{
    if (request()->isPost()) {
        $menu = new MenuModel;
        $menu->name = input('post.name');
        $menu->url = input('post.url');
        $menu->save();
        $this->success('菜单创建成功', url('admin/menu/index'));
    } else {
        return $this->fetch('create');
    }
}

create.html ビュー ファイルでは、フォーム要素を使用して新しいメニューを作成できます。

4.3 更新オペレーション

指定したメニューの情報を更新し、完了時にユーザーをメニュー管理ページにリダイレクトする更新オペレーションを作成できます。

public function update()
{
    $id = input('id');
    $menu = MenuModel::get($id);
    if (request()->isPost()) {
        $menu->name = input('post.name');
        $menu->url = input('post.url');
        $menu->save();
        $this->success('菜单更新成功', url('admin/menu/index'));
    } else {
        $this->assign('menu', $menu);
        return $this->fetch('update');
    }
}

update.html ビュー ファイルでは、指定したメニューの情報を表示し、フォーム要素を使用してユーザーがメニュー情報を更新できるようにします。

4.4 削除操作

指定されたメニューをデータベースから削除し、完了時にユーザーをメニュー管理ページにリダイレクトする削除操作を作成できます。

public function delete()
{
    $id = input('id');
    $menu = MenuModel::get($id);
    $menu->delete();
    $this->success('菜单删除成功', url('admin/menu/index'));
}

index.html ビュー ファイルでは、リンク要素を使用して削除操作をトリガーできます。

以上は、ThinkPHP6 でのメニュー管理操作の紹介です。これらのアクションを使用すると、Web アプリケーションのメニューを簡単に管理し、ユーザーに優れたユーザー エクスペリエンスを提供できます。

以上がThinkPHP6 でメニュー管理操作を実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。