您现在的位置是:网站首页> 编程资料编程资料

Django完整增删改查系统实例代码_python_

2023-05-26 397人已围观

简介 Django完整增删改查系统实例代码_python_

一、效果图如下

二、使用步骤

1.创建并配置一个django项目

1.1新建一个项目ch3

django-admin startproject ch3

请添加图片描述

1.2创建应用employee

python manage.py startapp employee 

1.3指定ch3项目的应用程序emyployee

在setting.py中INSTALLED_APPS下加入employee应用程序

1.4与数据库相连

1.在数据库中创建一个数据库名为testOrm
2.在setting.py文件添加与数据库连接的信息
3.添加模文件夹

1.5 定义与使用模型

模型定义在应用employee的model.py文件中,并继承model.Model类。在本次项目中定义了模型类department

class department(models.Model): dep_name=models.CharField(max_length=32,verbose_name='部门名称',unique=True,blank=False) dep_script=models.CharField(max_length=60,verbose_name='备注说明',null=True 

1.6生成迁移文件

python manage.py makemigrations 

执行生产迁移命令后会生成一下0001_initial.py文件

迁移文件生成后,使用迁移文件命令生成对应的数据表

python manage.py migrate 

二、实现数据库增删改查

2.1视图文件

实现增删改查的方法

# 查询所有数据 def list_dep_old(request): # 查询所有数据 def_list=department.objects.all()#查询方法:all(),filter(),exclude(),get() return render(request,'test_orm_old/list_dep_old.html',{'dep_list':def_list}) #添加数据 def add_dep_old(request): # 判断请求方式,如果post,说明前端需要提交数据 if request.method=='POST': # 获取传过来的get()函数中的参数(html文件input()标签的name属性) dep_name=request.POST.get('dep_name') dep_script=request.POST.get('dep_script') # strip()过滤 if dep_name.strip()=='': return render(request,'test_orm_old/add_dep_old.html',{'error_info':'名称不能为空'}) # 用create()函数新建一条函数,会自动保存,不需要调用save()函数 try: # 添加数据有两种方式:1.使用模型管理器的create()方法添加数据,2.使用模型实列save()方法保存 p=department.objects.create(dep_name=dep_name,dep_script=dep_script) return redirect('/test_orm_old/list_dep_old/') except Exception as e: return render(request,'test_orm_old/add_dep_old.html',{'error_info':'输入部门名称重复或信息错误!'}) finally: pass return render(request,'test_orm_old/add_dep_old.html/') #删除数据 def del_dep_old(request,dep_id): dep_object=department.objects.get(id=dep_id) dep_object.delete() return redirect('/test_orm_old/list_dep_old/') #修改数据 def edit_dep_old(request,dep_id): if request.method=='POST': id=request.POST.get('id') dep_name=request.POST.get('dep_name') dep_script=request.POST.get('dep_script') dep_object=department.objects.get(id=id) dep_object.dep_name=dep_name dep_object.dep_script=dep_script dep_object.save() return redirect('/test_orm_old/list_dep_old/') else: dep_object=department.objects.get(id=dep_id) return render(request,'test_orm_old/edit_dep_old.html',{'department':dep_object})

2.2前端页面

1.在应用下创建templates文件目录用来存放前端页面文件
2.并在templates下创建test_orm_old文件目录

2.2.1主页面(list_dep_old.xml)

主页面

部门列表

{% for dep in dep_list %} {% empty %} {% endfor %}
部门名称备注说明操作
{{ dep.dep_name }}{{ dep.dep_script}}删除修改
无相关记录!

2.2.2增加数据页面(add_dep_old.html)

增加部门

增加部门


{% csrf_token %}


{{ error_info }}

2.2.3修改页面(edit_dep_old.html)

修改部门

修改部门

{% csrf_token %}


{{ error_info }}

2.3在主项目中添加路由

from django.contrib import admin from django.urls import path,include from employee import views urlpatterns = [ path('admin/', admin.site.urls), # path('',include('employee.urls')), path('test/',views.test), path('list_dep_old/',views.list_dep_old), path('test_orm_old/list_dep_old/',views.list_dep_old), path('test_orm_old/add_dep_old/',views.add_dep_old), path('test_orm_old/del_dep_old//',views.del_dep_old), ] 

总结

注意一定要配置好每一步。

到此这篇关于Django完整增删改查系统的文章就介绍到这了,更多相关Django增删改查系统内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

-六神源码网