创建thinkphp项目并配置数据库

配置环境并引入UI

ssr模式

使用 composer 命令在指定的目录安装 Thinkphp6.x

composer create-project topthink/think tp6demo

出现Fatal error: Directive ‘track_errors’ is no longer available in PHP in Unknown on line 0说明你的php版本较高,在php.ini中track_errors=Off

修改.env 文件,配置数据库、帐号密码,以及开启调试

就用123吧

运行成功后,我们将要引入 Bootstrap 的 UI 库,

直接将 Bootstrap 包含 js 和 css 文件夹拷贝项目中 public/static 里;

配置 config/view.php,设置静态调用的模版路径;

// 模版替换输出

‘tpl_replace_string’ => [

JS’ => ‘…/static/js’,

CSS’ => ‘…/static/css’,

],

在默认控制器 Index.php 创建一个 test()方法,用于测试 UI 引入的正确性;

<?php
namespace app\controller;

use app\BaseController;
use think\App;
use think\facade\View;

class Index extends BaseController
{
    public function index()
    {
        return View::fetch('index');
    }

}

在这里插入图片描述
没有驱动,安装

composer require topthink/think-view

创建数据库

-- 创建 student 数据库
CREATE DATABASE IF NOT EXISTS student;

-- 使用 student 数据库
USE student;

-- 创建 tp_user 表
CREATE TABLE IF NOT EXISTS tp_user (
    id MEDIUMINT(8) NOT NULL AUTO_INCREMENT PRIMARY KEY,   -- 自动编号,主键
    username VARCHAR(20) NOT NULL,                         -- 用户名,不能为空
    password CHAR(40) NOT NULL,                            -- 密码,不能为空
    gender CHAR(1) NOT NULL DEFAULT '男',                  -- 性别,不能为空,默认为 '男'
    email VARCHAR(100) NOT NULL,                           -- 邮箱,不能为空
    status TINYINT(1) NOT NULL,                            -- 状态,不能为空
    create_time DATETIME NOT NULL DEFAULT '1970-01-01 00:00:00',  -- 创建时间,默认为 1970-01-01
    update_time DATETIME NOT NULL DEFAULT '1970-01-01 00:00:00',  -- 更新时间,默认为 1970-01-01
    INDEX (username)  -- 可以为 username 字段添加索引(如果需要)
);


-- 插入数据到 tp_user 表
INSERT INTO tp_user (username, password, gender, email, status, create_time, update_time)
VALUES
    ('user1', 'password1', '男', 'user1@example.com', 1, NOW(), NOW()),
    ('user2', 'password2', '女', 'user2@example.com', 0, NOW(), NOW()),
    ('user3', 'password3', '男', 'user3@example.com', 1, NOW(), NOW()),
    ('user4', 'password4', '女', 'user4@example.com', 1, NOW(), NOW()),
    ('user5', 'password5', '男', 'user5@example.com', 0, NOW(), NOW()),
    ('user6', 'password6', '男', 'user6@example.com', 1, NOW(), NOW()),
    ('user7', 'password7', '女', 'user7@example.com', 0, NOW(), NOW()),
    ('user8', 'password8', '男', 'user8@example.com', 1, NOW(), NOW()),
    ('user9', 'password9', '女', 'user9@example.com', 1, NOW(), NOW()),
    ('user10', 'password10', '男', 'user10@example.com', 0, NOW(), NOW());

使用如下命令来生成一个资源控制器:User.php;

php think make:controller User

创建 model 下的 User.php

设置路由,方便访问:

//用户模块资源路由
Route::resource('user', 'User');

获取数据,并将输入传入模版;

在User控制器中添加

return View::fetch('index', [
'list' => UserModel::select()

]);

在 ThinkPHP 中,模型层提供了便捷的数据库操作方法,框架会自动生成一些常见的方法,例如 selectinsertupdatedelete,这些方法是由 ThinkPHP 的 ORM(对象关系映射)机制和 模型类 自动支持的。

ThinkPHP 使用 模型 来简化与数据库的交互。在模型中,你不需要手动编写复杂的 SQL 查询语句,框架会为你生成常见的数据库操作方法。

当你创建了一个模型类,ThinkPHP 会自动提供一系列的方法,这些方法允许你轻松地进行数据库操作。以下是几个常见的自动生成方法:

  • select():查询多条记录。
  • find():查询单条记录。
  • insert():插入数据。
  • update():更新数据。
  • delete():删除数据。
  • save():根据主键更新数据或插入数据(用于更新或新增)。

这些方法是由 模型类 中自动继承的。例如,如果你有一个 User 模型类,它将自动支持如 selectinsertupdate 等方法。

**模版部分,采用<volist>遍历显示数据即可;**

{volist name="list" id="obj"}

<tr>
{volist name="list" id="obj"}
<tr>
<td class="text-center">{$obj.id}</td>
<td>{$obj.username}</td>
<td class="text-center">{$obj.gender}</td>
<td>{$obj.email}</td>
<td class="text-center">
<span class="badge badge-{$obj.badge}">{$obj.status}</span>
</td>
<td class="text-center">{$obj.create_time}</td>
<td class="text-center">
<button class="btn btn-danger btn-sm">删除</button>
<button class="btn btn-warning btn-sm">修改</button>
</td>
</tr>
{/volist}

现在你已经配置好一个项目了
end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值