django的安裝和使用


使用python的包下載管理工具pip安裝django

pip install django

創建django項目

django-admin  startproject my01 #后面是項目名稱

創建好的項目目錄是這樣

———————————————————————————————————————————————————————————————————————————————

現在我們已經創建好一個django項目

django-admin startapp api

 

然后我們再進項目里創建一個app

 

 

創建好APP的目錄

 

 

 緊接着我們去配置文件setting中注冊app

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'api'#注冊APP
]

 注冊好APP之后在項目的總路由做分發路由

from django.urls import path,include


urlpatterns = [
    # path('admin/', admin.site.urls),
     path('api/',include('api.urls'))



]

 然后在app中創建一個子路由文件

在這個子路由文件中就可以寫我們的路由啦

from django.urls import path
from api import views

urlpatterns = [
 path('hello/',views.hello),#每個路由對應一個視圖函數
 path('index',views.index)




]

對應的視圖函數

def hello(request):
    return HttpResponse("hello")
def index(request):
    return  HttpResponse('index')

寫好路由和視圖我們就可以運行我們的項目

 

 

 

第一條最簡單的接口就實現了

 

也可以寫成cbv的形式,這種寫法更簡潔,結構更清晰

路由寫法

urlpatterns = [

 path('user',views.UserView.as_view())




]

 

對應的視圖類

class UserView(views.View):
    def get(self,request,*args,**kwargs):
        return HttpResponse('get')
    def post(self,request,*args,**kwargs):
        return HttpResponse('post')
    def put(self,request):
        return HttpResponse('put')
    def delete(self,request):
        return HttpResponse('delete')

 

接下來我們就要配置數據庫

在setting中這是系統默認的配置

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}

而我們要使用高級一點的mysql

則不用它的配置,換我們自己的配置

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'hello',#庫名
        'USER': 'root',#賬號
        'PASSWORD': 'root',#密碼
        'HOST': '127.0.0.1',#IP地址
        'PORT': '3306',#端口號
        "OPTIONS": {"init_command": "SET default_storage_engine=INNODB;"}
    }
}

然后在項目的Init文件中加上這句代碼

import pymysql

pymysql.install_as_MySQLdb()

此時我們的數據庫已經配置好了

我們要在models這個文件中創建模型類

from django.db import models

# Create your models here.
class Teacher(models.Model):
    #db_column為數據庫表頭名,verbose_name為后台頁面列表中顯示的字段名
    tname = models.CharField(max_length=20,db_column='名字',verbose_name='名字')
    tgender = models.BooleanField(default=True,db_column='性別',verbose_name='性別')
    tid = models.CharField(max_length=20,db_column='職工號',verbose_name='職工號')
    isDelete = models.BooleanField(db_column='是否刪除',default=False)

生成遷移文件

python manage.py  makemigrations

執行遷移

python manage.py   migrate

此時我們的數據庫就生成表了

就可以操作數據庫啦

 

models.Register.objects.create(username=username, password=password, 
                                               prop=prop,
                                               name=name, sex=sex,
                                               age=age, company=company, duty=duty,
                                               phone=phone, desc=desc,
                                               )

查找

obj = models.Register.objects.filter(username=xiaoyong).first()

  

obj = models.Register.objects.get(id=3)

 

obj = models.Register.objects.all()

 

models.Register.objects.filter(username=username).update(prop=prop,
                                                                         name=name, sex=sex,
                                                                         age=age, company=company, duty=duty,
                                                                         phone=phone, desc=desc, )

 

刪除

obj = models.Reqister.objects.get(id=3) obj.delete()

 

models.Reqister.objects.get(password='xiaoli').delete()


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM