下面我将详细讲解“Python Django实现增删改查实战代码”的完整攻略,具体内容如下:
需求分析
在实现增删改查实战代码之前,我们首先需要明确自己的需求。本文中我们的需求是基于 Django 实现一个简单的学生信息管理系统,其中包括添加学生信息、删除学生信息、修改学生信息以及查看学生信息。
环境准备与项目创建
在开始项目前,我们需要先安装 Django。可以使用 pip 命令 pip install Django
来安装。安装完成以后,我们可以使用 Django 的命令行工具来创建新的项目:
django-admin startproject student_management
其中 student_management
为项目的名称。创建完成后,可以使用以下命令来启动项目:
python manage.py runserver
在浏览器中访问 http://localhost:8000,如果看到 Django 的欢迎页面,就说明项目创建成功了。
创建数据库
Django 默认使用 SQLite 作为数据库,我们只需要在 settings.py
文件中指定数据库的连接参数即可。在这里我们使用默认的 SQLite 数据库,并在 settings.py
文件中添加如下配置:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': BASE_DIR / 'db.sqlite3',
}
}
运行以下命令可以创建数据库表:
python manage.py migrate
创建学生信息模型
在项目中,我们需要定义一个学生信息模型来存储学生的信息。在 models.py
文件中添加如下代码:
from django.db import models
class Student(models.Model):
name = models.CharField(max_length=50)
age = models.IntegerField()
sex = models.CharField(max_length=10)
def __str__(self):
return self.name
以上代码定义了一个 Student
模型,包含字段 name
(姓名)、age
(年龄)、sex
(性别)。我们还需要在 settings.py
文件中添加如下配置:
INSTALLED_APPS = [
# ...
'student',
# ...
]
其中 'student'
是应用的名称,这是我们在后面创建 views 时需要用到的。
运行以下命令可以将模型同步到数据库中:
python manage.py makemigrations
python manage.py migrate
创建视图函数
接下来,我们需要创建视图函数来实现以下功能:
- 添加学生信息
- 删除学生信息
- 修改学生信息
- 查看学生信息
在 views.py
文件中添加如下代码:
from django.shortcuts import render, redirect
from student.models import Student
def add_student(request):
if request.method == 'POST':
name = request.POST['name']
age = request.POST['age']
sex = request.POST['sex']
Student.objects.create(name=name, age=age, sex=sex)
return redirect('/student/list/')
return render(request, 'add.html')
def delete_student(request, id):
Student.objects.filter(id=id).delete()
return redirect('/student/list/')
def edit_student(request, id):
student = Student.objects.get(id=id)
if request.method == 'POST':
student.name = request.POST['name']
student.age = request.POST['age']
student.sex = request.POST['sex']
student.save()
return redirect('/student/list/')
context = {'student': student}
return render(request, 'edit.html', context)
def list_student(request):
students = Student.objects.all()
context = {'students': students}
return render(request, 'list.html', context)
以上代码定义了四个视图函数:
add_student
函数用于添加学生信息。当用户提交表单时,会将表单数据存入数据库,并跳转到学生信息列表页面。delete_student
函数用于删除学生信息。edit_student
函数用于修改学生信息。当用户提交表单时,会将修改后的信息存入数据库,并跳转到学生信息列表页面。list_student
函数用于显示所有学生信息。
创建 URL 路由
在 urls.py
文件中添加如下代码:
from django.urls import path
from student.views import add_student, delete_student, edit_student, list_student
urlpatterns = [
path('add/', add_student, name='add_student'),
path('delete/<int:id>/', delete_student, name='delete_student'),
path('edit/<int:id>/', edit_student, name='edit_student'),
path('list/', list_student, name='list_student'),
]
以上代码定义了四个 URL 路由,分别对应四个视图函数。
创建模板文件
最后,我们需要创建模板文件。在 templates
目录中创建 add.html
、edit.html
、list.html
三个 HTML 文件,分别对应三个页面。以下是 list.html
页面的示例代码:
<!DOCTYPE html>
<html>
<head>
<title>学生信息列表</title>
</head>
<body>
<h1>学生信息列表</h1>
<a href="{% url 'add_student' %}">添加学生信息</a>
<table>
<thead>
<tr>
<th>姓名</th>
<th>年龄</th>
<th>性别</th>
<th>操作</th>
</tr>
</thead>
<tbody>
{% for student in students %}
<tr>
<td>{{ student.name }}</td>
<td>{{ student.age }}</td>
<td>{{ student.sex }}</td>
<td>
<a href="{% url 'edit_student' student.id %}">编辑</a>
<a href="{% url 'delete_student' student.id %}">删除</a>
</td>
</tr>
{% endfor %}
</tbody>
</table>
</body>
</html>
以上代码定义了一个学生信息列表页面,其中包含一个用于添加学生信息的链接,以及一个表格用于展示所有学生的信息。
总结
以上就是本文讲解的“Python Django实现增删改查实战代码”的完整攻略。本文主要介绍了如何使用 Django 实现一个简单的学生信息管理系统,并详细讲解了项目创建、数据库创建、模型定义、视图函数编写、URL 路由配置以及模板文件创建等内容。通过学习这些内容,相信读者们已经能够熟练掌握 Django 的使用了。如需了解更多相关知识,可以参考 Django 官方文档。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python Django实现增删改查实战代码 - Python技术站