最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Django完整增刪改查系統(tǒng)實(shí)例代碼

 更新時(shí)間:2022年08月19日 09:55:33   作者:IT女喵  
Django實(shí)現(xiàn)增刪改查,主要是依賴于models來實(shí)現(xiàn)的,下面這篇文章主要給大家介紹了關(guān)于Django完整增刪改查系統(tǒng)的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下

一、效果圖如下

二、使用步驟

1.創(chuàng)建并配置一個(gè)django項(xiàng)目

1.1新建一個(gè)項(xiàng)目ch3

django-admin startproject ch3

請(qǐng)?zhí)砑訄D片描述

1.2創(chuàng)建應(yīng)用employee

python manage.py startapp employee

1.3指定ch3項(xiàng)目的應(yīng)用程序emyployee

在setting.py中INSTALLED_APPS下加入employee應(yīng)用程序

1.4與數(shù)據(jù)庫相連

1.在數(shù)據(jù)庫中創(chuàng)建一個(gè)數(shù)據(jù)庫名為testOrm
2.在setting.py文件添加與數(shù)據(jù)庫連接的信息
3.添加模文件夾

1.5 定義與使用模型

模型定義在應(yīng)用employee的model.py文件中,并繼承model.Model類。在本次項(xiàng)目中定義了模型類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

執(zhí)行生產(chǎn)遷移命令后會(huì)生成一下0001_initial.py文件

遷移文件生成后,使用遷移文件命令生成對(duì)應(yīng)的數(shù)據(jù)表

python manage.py migrate

二、實(shí)現(xiàn)數(shù)據(jù)庫增刪改查

2.1視圖文件

實(shí)現(xiàn)增刪改查的方法

# 查詢所有數(shù)據(jù)
def list_dep_old(request):
    # 查詢所有數(shù)據(jù)
    def_list=department.objects.all()#查詢方法:all(),filter(),exclude(),get()
    return render(request,'test_orm_old/list_dep_old.html',{'dep_list':def_list})
#添加數(shù)據(jù)
def add_dep_old(request):
    # 判斷請(qǐng)求方式,如果post,說明前端需要提交數(shù)據(jù)
    if request.method=='POST':
        # 獲取傳過來的get()函數(shù)中的參數(shù)(html文件input()標(biāo)簽的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()函數(shù)新建一條函數(shù),會(huì)自動(dòng)保存,不需要調(diào)用save()函數(shù)
        try:
            # 添加數(shù)據(jù)有兩種方式:1.使用模型管理器的create()方法添加數(shù)據(jù),2.使用模型實(shí)列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':'輸入部門名稱重復(fù)或信息錯(cuò)誤!'})
        finally:
            pass
    return render(request,'test_orm_old/add_dep_old.html/')
#刪除數(shù)據(jù)
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/')
#修改數(shù)據(jù)
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.在應(yīng)用下創(chuàng)建templates文件目錄用來存放前端頁面文件
2.并在templates下創(chuàng)建test_orm_old文件目錄

2.2.1主頁面(list_dep_old.xml)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>主頁面</title>
</head>
<body>
<h1>部門列表</h1>
<div><a href="/test_orm_old/add_dep_old" rel="external nofollow" >增加一條記錄</a></div>
<table border="1">
    <thead>
    <tr>
        <td>部門名稱</td>
        <td>備注說明</td>
        <td colspan="2">操作</td>
    </tr>
    </thead>
    <tbody>
    {% for dep in dep_list %}
    <tr>
        <td>{{ dep.dep_name }}</td>
        <td>{{ dep.dep_script}}</td>
        <td><a href="/test_orm_old/del_dep_old/{{dep.id}}/" rel="external nofollow" >刪除</a> </td>
        <td><a href="/test_orm_old/edit_dep_old/{{dep.id}}/" rel="external nofollow" >修改</a> </td>
    </tr>
    {% empty %}
        <tr>
            <td colspan="4">無相關(guān)記錄!</td>
        </tr>
    {% endfor %}
    </tbody>
</table>
</body>
</html>

2.2.2增加數(shù)據(jù)頁面(add_dep_old.html)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>增加部門</title>
</head>
<body>
<div align="center">
    <h1>增加部門</h1>
    <hr>
    <form action="" method="post">
<!--        安全機(jī)制-->
        {% csrf_token %}
        <input type="hidden" name="id" id="id" value="{{ department.id }}">
        <div>
            <label>部門名稱:</label>
                <input type="text" name="dep_name" id="dep_name">
        </div>
        <br>
        <div>
            <label>備注說明:</label>
                <input type="text" name="dep_script" id="dep_script">
        </div>
        <br>
        <div>
            <input type="submit" value="保存">
        </div>
    </form>
    {{ error_info }}
</div>
</body>
</html>

2.2.3修改頁面(edit_dep_old.html)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>修改部門</title>
</head>
<body>
<div align="center">
    <h1>修改部門</h1>
    <form action="" method="post">
        {% csrf_token %}
        <input type="hidden" name="id" id="id" value="{{ department.id}}">
        <div>
            <label>部門:</label>
                <input type="text" name="dep_name" id="dep_name" value="{{ department.dep_name }}">
        </div>
        <br>
        <div>
            <label>備注:</label>
                <input type="text" name="dep_script" id="dep_script" value="{{ department.dep_script}}">
        </div>
        <br>
        <div><input type="submit" value="保存"></div>
    </form>
    {{ error_info }}
</div>
</body>
</html>

2.3在主項(xiàng)目中添加路由

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/<int:dep_id>/',views.del_dep_old),
]

總結(jié)

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

到此這篇關(guān)于Django完整增刪改查系統(tǒng)的文章就介紹到這了,更多相關(guān)Django增刪改查系統(tǒng)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python開根號(hào)實(shí)例講解

    python開根號(hào)實(shí)例講解

    在本篇文章里小編給大家整理的是關(guān)于python開根號(hào)實(shí)例講解內(nèi)容,有需要的朋友們可以參考下。
    2020-08-08
  • 對(duì)pandas的層次索引與取值的新方法詳解

    對(duì)pandas的層次索引與取值的新方法詳解

    今天小編就為大家分享一篇對(duì)pandas的層次索引與取值的新方法詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11
  • python+pytest接口自動(dòng)化之日志管理模塊loguru簡介

    python+pytest接口自動(dòng)化之日志管理模塊loguru簡介

    python中有一個(gè)用起來非常簡便的第三方日志管理模塊--loguru,不僅可以避免logging的繁瑣配置,而且可以很簡單地避免在logging中多進(jìn)程多線程記錄日志時(shí)出現(xiàn)的問題,甚至還可以自定義控制臺(tái)輸出的日志顏色,接下來我們來學(xué)習(xí)怎么使用loguru模塊進(jìn)行日志管理
    2022-05-05
  • 基于Python pyecharts實(shí)現(xiàn)多種圖例代碼解析

    基于Python pyecharts實(shí)現(xiàn)多種圖例代碼解析

    這篇文章主要介紹了基于Python pyecharts實(shí)現(xiàn)多種圖例代碼解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • 使用Python繪制動(dòng)態(tài)愛心并表白的代碼詳解

    使用Python繪制動(dòng)態(tài)愛心并表白的代碼詳解

    在這個(gè)充滿浪漫的季節(jié),如何用代碼表達(dá)你的愛意呢?今天我們將使用 Python 的 matplotlib 和 numpy 庫繪制一個(gè)動(dòng)態(tài)的愛心,并且在愛心上添加表白的文字,這將是一個(gè)獨(dú)特而浪漫的方式來表達(dá)你的心聲,感興趣的小伙伴跟著小編來看看吧
    2025-04-04
  • python 尋找離散序列極值點(diǎn)的方法

    python 尋找離散序列極值點(diǎn)的方法

    今天小編就為大家分享一篇python 尋找離散序列極值點(diǎn)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • Python操作PDF圖片的基本方法(增刪改查)

    Python操作PDF圖片的基本方法(增刪改查)

    PDF文件中的圖片可以豐富文檔內(nèi)容,提升用戶的閱讀體驗(yàn),除了在PDF中添加圖片外,有時(shí)也需要替換或刪除其中的圖片,文本將提供三個(gè)示例,介紹如何使用Python?操作PDF文件中的圖片,需要的朋友可以參考下
    2024-04-04
  • 詳解使用python3.7配置開發(fā)釘釘群自定義機(jī)器人(2020年新版攻略)

    詳解使用python3.7配置開發(fā)釘釘群自定義機(jī)器人(2020年新版攻略)

    這篇文章主要介紹了詳解使用python3.7配置開發(fā)釘釘群自定義機(jī)器人(2020年新版攻略),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • django框架使用方法詳解

    django框架使用方法詳解

    這篇文章主要介紹了django框架使用方法詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07
  • pyecharts如何旋轉(zhuǎn)折線圖的X軸標(biāo)簽

    pyecharts如何旋轉(zhuǎn)折線圖的X軸標(biāo)簽

    這篇文章主要介紹了pyecharts如何旋轉(zhuǎn)折線圖的X軸標(biāo)簽,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11

最新評(píng)論

阿勒泰市| 米易县| 辽阳县| 河北省| 兴安县| 白沙| 淄博市| 育儿| 丽水市| 遵义市| 子洲县| 石门县| 新郑市| 夏邑县| 虞城县| 盐边县| 长沙市| 通江县| 鹤峰县| 灌阳县| 绥芬河市| 长丰县| 土默特右旗| 汉沽区| 阳新县| 清徐县| 六枝特区| 驻马店市| 老河口市| 朝阳区| 卫辉市| 滦平县| 仁寿县| 北票市| 南郑县| 万安县| 泗水县| 紫阳县| 芜湖市| 万盛区| 英超|