thinkphp多选删除

来源:undefined 2025-01-02 00:00:12 1008

thinkphp6是一款非常优秀的php开发框架,它基于mvc架构,开发效率高、易上手、安全可靠,同时极大简化了代码编写的流程。今天,我们来谈一下使用thinkphp6实现多选删除的方法。

一、前言

多选删除是现代Web应用程序的常见功能之一。它允许用户在数据表格或列表中选择多个项目,然后可以删除它们。在这篇文章中,我们将介绍如何使用thinkphp6的控制器和模型来实现这个功能。

二、建立数据库

首先,我们需要在MySQL数据库中建立一个示例表。我们将使用命令行工具或phpMyAdmin来完成这个步骤。

CREATE TABLE example_table (

id int(11) NOT NULL AUTO_INCREMENT,

name varchar(255) NOT NULL,

email varchar(255) NOT NULL,

PRIMARY KEY (id)

) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

这将创建一个名为“ example_table”的新表,其中包含id,name和email字段。

三、生成模型和控制器

接下来,我们需要根据上面创建的表结构来生成一个模型和一个控制器。

使用thinkphp6的Artisan命令行工具可以快速生成这些文件:

php think make:model ExampleModel --migration

运行上述命令将生成一个新的模型文件( app /Model/ExampleModel.php )和一个新的数据库迁移文件( database /migrations /yyyymmddhhmmss_create_example_model.php )。

php think make:controller ExampleController

运行上述命令将生成一个名为ExampleController.php的新文件( app /Controller/ExampleController.php )。

四、编写代码

现在我们已经准备好编写控制器代码来处理多选删除了。在控制器中,我们需要实现两个主要的action函数:index(用于显示所有数据)和delete(用于处理删除请求)。

在app /Controller /ExampleController.php文件中,添加以下代码:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

acadeView;

use thinkRequest;

use appmodelExampleModel;

class ExampleController

{

public function index()

{

$list = ExampleModel::all();

return View::fetch(index, [

list => $list,

]);

}

public function delete(Request $request)

{

$ids = $request->param(ids);

foreach ($ids as $id) {

ExampleModel::destroy($id);

}

return [status => success, message => 删除成功];

}

}

登录后复制

在上面的代码中,我们首先导入了类,并定义了两个函数index和delete。函数index用于从ExampleModel中获取所有数据,并将其传递到模板中。函数delete从HTTP请求中获取要删除的ID列表,并使用ExampleModel::destroy方法删除这些项目。

接下来,我们需要为模板添加一个多选框以及删除按钮。打开app /View /example /index.html文件,添加以下代码:

<meta charset="UTF-8"><title>Example</title><h1>Example</h1>
登录后复制
ID Name Email

最新文章