日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

django連接數據庫獲取數據的簡單步驟記錄_python

作者:小神龍哈哈哈 ? 更新時間: 2022-09-04 編程語言

1、創(chuàng)建項目

執(zhí)行代碼

django-admin startproject myweb

2、創(chuàng)建應用

python manage.py startapp myapp

3、運行項目

python manage.py runserver

如果沒有加端口號就是默認8080,可以自己加端口號,防止與其它項目的端口號重復導致不能運行成功

python manage.py runserver 0.0.0.0:8080

端口號可以隨意取,只要不重復就行

4、連接數據庫

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'mydemo',
        'USER': 'root',
        'PASSWORD': '',
        'HOST': 'localhost',
        'PORT': '3306',
    }
}

如果沒有安裝mysqlclient模塊執(zhí)行以下代碼進行安裝

pip install  mysqlclient

然后在目錄中創(chuàng)建模型

```python
from django.db import models

# Create your models here.

class Stu(models.Model):
    '''自定義Stu表對應的Model類'''
    #定義屬性:默認主鍵自增id字段可不寫
    id = models.AutoField(primary_key=True)
    name = models.CharField(max_length=16)
    age = models.SmallIntegerField()
    sex = models.CharField(max_length=1)
    classid=models.CharField(max_length=8)

    # 定義默認輸出格式
    def __str__(self):
        return "%d:%s:%d:%s:%s"%(self.id,self.name,self.age,self.sex,self.classid)

    # 自定義對應的表名,默認表名:myapp_stu
    class Meta:
        db_table="stu"

激活模型——把新增的應用添加到模型中。

編輯myweb/settings.py文件,并將該虛線路徑添加到該INSTALLED_APPS設置。

INSTALLED_APPS  =  [ 
    'django.contrib.admin' ,
    'django.contrib.auth' ,
    'django.contrib.contenttypes' ,
    'django.contrib.sessions' ,
    'django.contrib.messages' ,
    'django.contrib.staticfiles' ,
    'myapp.apps.MyappConfig',  #或者直接寫 myapp
]

5、創(chuàng)建數據庫stu

使用Navicat數據庫,在數據庫中要創(chuàng)建數據庫myweb,創(chuàng)建表stu,自己根據model模型中的數據類型增加數據。

數據都要有單引號,否則會報錯

錯誤記錄

TypeError: connect() argument 3 must be str, not int

類型不匹配的問題,要把數據庫中字段的類型跟代碼中的類型相匹配。

RuntimeError: Model class myapp.models.Stu doesn’t declare an explicit app_label and isn’t in an app

沒有激活模型,原來我是寫成myphoto,不是myapp,所以會報錯。

6、應用

# 文件:myapp/views.py 文件代碼

from django.shortcuts import render
from django.http  import HttpResponse
from myapp.models import Stu
# Create your views here.

def index(request):
    return HttpResponse("Hello Django!")

def stu(request):
    #獲取所有stu表信息
    lists = Stu.objects.all()
    print(lists)
    #獲取單條學生信息
    print(Stu.objects.get(id=1))

    return HttpResponse("ok")

配置stu函數的訪問路由

#在myapp/urls.py文件中配置

path('stu/', views.stu),

然后啟動服務

python manage.py runserver

在網頁中的路徑改為以下路徑

http://127.0.0.1:8088/myapp/stu/

cmd里有數據顯示

顯示數據庫中的數據

7、總結

簡易的一個獲取數據庫內容的例子,最主要的是要自己先創(chuàng)建數據才能獲取到。

原文鏈接:https://blog.csdn.net/qq_45802978/article/details/124328629

欄目分類
最近更新