ホームページ >PHPフレームワーク >ThinkPHP >ThinkPHP6 バックエンド管理システム開発: バックエンド機能の実現

ThinkPHP6 バックエンド管理システム開発: バックエンド機能の実現

王林
王林オリジナル
2023-08-27 11:55:501265ブラウズ

ThinkPHP6 バックエンド管理システム開発: バックエンド機能の実現

ThinkPHP6 バックエンド管理システム開発: バックエンド機能の実現

はじめに:
インターネット技術の継続的な発展と市場の需要に伴い、ますます多くの企業や組織がバックエンド機能を実現する必要があります。ビジネスデータを管理し、運用管理を行うための、効率的、安全かつ柔軟なバックエンド管理システム。この記事では、ThinkPHP6 フレームワークを使用して、権限制御、データの追加、削除、変更、クエリなどの基本機能を含む、シンプルだが実用的なバックエンド管理システムを開発する方法を例を通して説明します。

  1. 環境の準備
    始める前に、PHP、MySQL、Composer、および ThinkPHP6 フレームワークをインストールする必要があります。具体的なインストール方法については公式ドキュメントを参照してください。
  2. バックグラウンド管理モジュールを作成する
    まず、プロジェクト内にバックグラウンド管理モジュールを作成する必要があります。これは、ThinkPHP が提供するコマンドを使用してすぐに作成できます。
php think module admin 
  1. アクセス許可制御の定義
    バックグラウンド管理システムでは、アクセス許可制御は非常に重要な機能です。 ThinkPHP のミドルウェアを使用して権限制御を実装できます。まず、ミドルウェア ファイル Auth.php を定義し、それを app/admin/middleware ディレクトリに配置する必要があります。
namespace appdminmiddleware;

use thinkacadeSession;

class Auth
{
    public function handle($request, Closure $next)
    {
        // 判断用户是否登录
        if (!Session::get('admin')) {
            return redirect(url('admin/login/index'));
        }
        return $next($request);
    }
}

次に、app/admin/middleware.php ファイルにミドルウェアを登録します。

return [
    'Auth' => appdminmiddlewareAuth::class,
];

最後に、権限制御が必要なルートに進みます。

Route::group('admin', function () {
    Route::group('user', function () {
        Route::get('index', 'admin/user/index')->middleware('Auth');
    });
});
  1. バックグラウンド機能の実装
    次に、ユーザー管理、記事管理など、いくつかの基本的なバックグラウンド機能の実装を開始します。

ユーザー管理:
まず、ユーザー管理のコントローラー User.php を作成し、app/admin/controller## に配置する必要があります。 # ディレクトリがダウンしました。

namespace appdmincontroller;

use thinkController;
use appdminmodelUser as UserModel;

class User extends Controller
{
    public function index()
    {
        $userModel = new UserModel();
        $users = $userModel->paginate(10);
        $this->assign('users', $users);
        return $this->fetch();
    }

    public function create()
    {
        // 处理用户的创建逻辑
    }

    public function edit($id)
    {
        // 处理用户的编辑逻辑
    }

    public function delete($id)
    {
        // 处理用户的删除逻辑
    }
}

次に、ユーザー モデル

User.php を作成し、app/admin/model ディレクトリに配置します。

namespace appdminmodel;

use thinkModel;

class User extends Model
{
    // 表名
    protected $table = 'users';
}

最後に、ユーザー リストのビュー コードを

app/admin/view/user/index.html ファイルに記述します。

<table>
    <thead>
        <tr>
            <th>ID</th>
            <th>用户名</th>
            <th>邮箱</th>
            <th>操作</th>
        </tr>
    </thead>
    <tbody>
        {volist name="users" id="user"}
        <tr>
            <td>{$user.id}</td>
            <td>{$user.username}</td>
            <td>{$user.email}</td>
            <td>
                <a href="{:url('admin/user/edit', ['id'=>$user.id])}">编辑</a>
                <a href="{:url('admin/user/delete', ['id'=>$user.id])}">删除</a>
            </td>
        </tr>
        {/volist}
    </tbody>
</table>

記事管理:

同様に、記事管理コントローラー
Article.php を作成し、 app/admin/controller ディレクトリに配置できます。

namespace appdmincontroller;

use thinkController;
use appdminmodelArticle as ArticleModel;

class Article extends Controller
{
    public function index()
    {
        $articleModel = new ArticleModel();
        $articles = $articleModel->paginate(10);
        $this->assign('articles', $articles);
        return $this->fetch();
    }

    public function create()
    {
        // 处理文章的创建逻辑
    }

    public function edit($id)
    {
        // 处理文章的编辑逻辑
    }

    public function delete($id)
    {
        // 处理文章的删除逻辑
    }
}

同様に、記事モデル

Article.php を作成し、app/admin/model ディレクトリに配置します。

namespace appdminmodel;

use thinkModel;

class Article extends Model
{
    // 表名
    protected $table = 'articles';
}

最後に、ユーザー管理のビュー コードと同様に、記事リストのビュー コードを

app/admin/view/article/index.html ファイルに記述します。

概要:

この記事では、ThinkPHP6 フレームワークを使用してシンプルなバックエンド管理システムを開発し、権限制御、データの追加、削除、変更、クエリなどの基本機能を実装します。この例を通じて、読者が ThinkPHP6 を使用して完全に機能するバックエンド管理システムを迅速に構築する方法を理解できることを願っています。もちろん、実際の開発では、さまざまなビジネス ニーズに合わせて機能をさらに改善し、パフォーマンスを最適化することができます。

以上がThinkPHP6 バックエンド管理システム開発: バックエンド機能の実現の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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