IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> Python之Django学习1 -> 正文阅读

[Python知识库]Python之Django学习1

Django学习简易版

准备工作

  1. 下载Django框架,注意:全部命令在管理员窗口执行

    pip install django==2.2.*
    # 2.2版本是稳定版的 * 代表这个版本最新的
    
  2. 创建框架,在第一步中有

  3. 启动项目

    python manage.py runserver # 默认是8080端口 ,本地连接
    python mangee.py runserver 8080 # 改端口
    python manage.py runserver 0.0.0.0:8000 # 远程连接,如果不成功,根据自己的django版本去官方文档找。
    
  4. 启动成功在浏览器中打开

    Run 'python manage.py migrate' to apply them.
    February 25, 2022 - 11:36:52
    Django version 2.2.8, using settings 'mydemo.settings'
    Starting development server at http://127.0.0.1:8000/ # 用这个url在浏览中打开
    Quit the server with CTRL-BREAK.
    

    ?

第一步创建框架

  1. 创建项目框架,随便找个目录,打开管理员窗口,在你找到目录在输入。

    django-admin startpoject myweb(项目名)
    
  2. 创建app 可以多个创建,进入myweb目录下,输入

    python manage.py startapp myapp(app名)
    
  3. 创建前端html页,手动 创建 在myweb下创建 templates/myapp目录,html写在myapp下,实在templates/myapp,而不是你创建的app下。

第二步环境配置

  1. 找到项目下settings.py 文件
  2. 修改ALLOWED_HOSTS=[’*’],让任意都能访问
  3. 添加自己的应用在INSTALLED_APPS中加入’myapp’,
  4. 在TEMPLATES中DIRS中修改[os.path.join(BAST_DIR,‘templates’)] ,html前端,用于解析url需要

数据库链接

  1. 配置
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'mytest',#选择数据库的名,请确认你的mysql中有这个库
        'USER': 'root',
        'PASSWORD': '1234',
        'HOST': '127.0.0.1',
        'PORT': '3306',
        }
}

2.在app中models.py中放映射数文档

这里要下载mysqlclient 模块

例子:

from django.db import models
from datetime import datetime

# Create your models here.
class Users(models.Model):
 #id = models.AutoField(primary_key=True) #主键可省略不写
 name = models.CharField(max_length=32)
 age = models.IntegerField(default=20)
 phone = models.CharField(max_length=16)
 addtime=models.DateTimeField(default=datetime.now)
	class Meta:
        db_table = "表名" # 指定表名,如果不写默认是app名_Users类名
  1. 生成迁移文件 python manage.py makemigrations

    图片

  2. 生成表 **python manage.py migrate myapp(app名) 注意:如果不写app名,INSTALLED_APPS里对应的都会创建表,djamgo_migrations app表 **

测试

  1. 配置子路由,找到项目中urls.py脚本

    from django.contrib import admin
    from django.urls import path,include #导入include
    
    urlpatterns = [
        # path('admin/', admin.site.urls),
        path('', include('myapp.urls')),# 指向子路径,这里的urls需要自己手动在myapp下创建。
    ]
    
  2. 再在自己手动创建的urls中修改

    from django.urls import path
    from . import views  # 导入视图层
    
    urlpatterns = [
        path('',views.index,name='index')
        # '' 默认为空url头部为空,views.index 视图层下·对应的函数, name='index' 反向解析需要。
    ]
    
  3. 在wiews中写index函数

    from django.shortcuts import render
    from django.http import HttpResponse
    # Create your views here.
    def index(request):
        return HttpResponse("首页")
    
  4. 在浏览器中测试

数据库简单增删改查操纵

增加

from django.shortcuts import render
from django.http import HttpResponse
from myapp.models import Users # 导入Users类
# Create your views here.
def index(request):
    # 增加
    ob = Users()
    ob.name = '张珊'
    ob.age = 20
    ob.phone = '135423234'
    ob.save() # 保存
     #删除操作
    # mod = Users.objects #获取users的model对象
    # user = mod.get(id=6) #获取id值为6的数据信息
    # print(user.name)
    # user.delete() #执行删除操作

    #修改操作
    # ob = Users.objects.get(id=7)
    # #print(ob.name)
    # ob.name = "小刘"
    # ob.age = 26
    # ob.save()

    #数据查询
    mod = Users.objects #获取Users模型的Model操作对象
    #ulist = mod.all() #获取所有数据
    #ulist = mod.filter(name='小刘') #获取name值为小刘的信息
    #ulist = mod.filter(age__gt=20) #获取所有age大于20的信息
    #ulist = mod.filter(age__gte=20) #获取所有age大于等于20的信息
    #ulist = mod.filter(age__lte=20) #获取所有age小于等于20的信息
    #ulist = mod.order_by("age") #按age升序排序
    ulist = mod.order_by("age")[:3] #按age升序排序,只获取前3条
    for u in ulist:
        print(u.id,u.name,u.age,u.phone,u.addtime)
    # 去浏览器刷新一下就行。
    # 再看终端(管理员窗口)有没有没错,数据库有数据就没错,就不截图了
    return HttpResponse("首页")
  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-02-28 15:25:00  更:2022-02-28 15:27:31 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/31 7:35:14-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码