Django学习笔记

Django学习笔记

一、Django整体流程跑通

1.1安装

pip install django     //安装
import django          //在python环境中导入django
django.get_version()  //获取版本号,如果能获取到,说明安装成功

Django目录结构

Python310-Scripts\django-admin.exe    //项目管理工具,创建django项目中的文件和文件夹-lib\site-packages\django    //框架源码

1.2 django常用命令

1)创建一个新项目

语法:

先进入某个指定的目录,项目文件将被创建在那个目录下。

django-admin startproject  <project_name>

示例:

django-admin startproject helloWorld    //创建一个名为helloWorld的新项目

2)创建一个app

语法:

django-admin startapp <app_name>

示例:

django-admin startapp app1              //新建一个名为app1的app

注意:

一个project下可以有多个app

每个app可以有独立的表结构、函数、HTML模板、css

3)在settings.py文件中注册应用名称

INSTALLED_APPS = ['django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','app1.apps.App1Config'              #添加应用名称(appName.apps.className)
]

4)配置模版路径(settings.py文件)

TEMPLATES = [{'BACKEND': 'django.template.backends.django.DjangoTemplates','DIRS': [os.path.join(BASE_DIR,'templates')],     #配置模版路径'APP_DIRS': True,'OPTIONS': {'context_processors': ['django.template.context_processors.debug','django.template.context_processors.request','django.contrib.auth.context_processors.auth','django.contrib.messages.context_processors.messages',],},},
]

5)配置数据库(settings.py文件)

默认为sqlite,可以配置并更改成mysql

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

6)配置允许所有主机访问(settings.py文件)

ALLOWED_HOSTS = ['*']

7)在init.py中添加以下代码,用于django的orm模型操作mysql数据库

import pymysql
pymysql.install_as_MySQLdb()

8)启动django

pyhton manage.py runserver      #只允许本机访问
 python manage.py runserver 0.0.0.0:8000   #允许所有主机访问,并配置端口号为8000

9)模型的迁移

将数据自带表迁移到数据库中

python manage.py makemigrations    #生成迁移文件 
python manage.py migrate           #进行迁移

迁移完后,在数据库中应该可以看到一些django的表

注意:

如果不执行迁移,那么在使用的时候,有些数据需要存到自带的表中,那么就会报错。

10)清空数据

 python manage.py flush

11)创建超级管理员

python manage.py createsuperuser

用户信息在auth_user表中

这时使用IP:8000/admin登入后台,就可以使用创建的超级管理员登入了

12)修改管理员密码

python manage.py changepasswd <username>

13)django项目环境终端

 python manage.py shell   #进入终端exit()                   #退出终端

14)数据库命令行

 python manage.py dbshell

1.3项目目录介绍

projectname|-manage.py     		 #项目的管理,启动项目、创建APP、数据管理|-projectname|-asgi.py   		 #接收网络请求|-wsgi.py   	     #接收网络请求|-urls.py   		 #url和函数的对应关系|-settings.py   	 #项目配置|-appname|-apps.py            #应用信息定义文件,在其中生成了AppConfig,该类用于定义应用名等数据 |-test.py            #测试代码文件|-admin.py           #管理站点模型的声明文件,默认为空|-migrations         #自动生成,生成迁移文件的|-views.py           #定义URL相关函数(路由规则)|-models.py          #添加模型层数据类文件,可用于操作数据库

1.4配置url和函数的对应关系

from django.contrib import admin         #默认自动创建
from django.urls import path             #默认自动创建
from app1 import views                   #引入views,就是app目录下的views.py
urlpatterns = [#path('admin/', admin.site.urls),    #默认自动创建,先注释掉path('index/',views.index),          #创建对应关系,参数1为url路径,参数2为views中的函数
]

1.5配置views函数

from django.shortcuts import render         #默认自动创建
from django.shortcuts import HttpResponse   #引入HttpResponse模块# Create your views here.
def index(request):                         #定义一个名为index的函数,对应上一小节return HttpResponse('Hello World')      #返回字符串

1.6访问项目

经过以上配置,就可以通过浏览器看到Hello World字样了。

http://192.168.0.25:8000/index/             #这个index就是1.4中配置的那个url路径

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/733802.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端框架的发展历程

文章目录 前言 一、静态页面时代 二、JavaScript的兴起 三、jQuery的出现 四、前端框架的崛起 1.AngularJS 2.React 3.Vue.js 五、面向组件化的发展趋势 总结 前言 前端框架的发展史就是一个不断进化的过程&#xff0c;它的发展和进化一定程度…

力扣刷题Days14第二题--80删除数组中重复元素||(js)

目录 1&#xff0c;题目-中等 2&#xff0c;代码 双指针 3&#xff0c;学习与总结 思路学习与整理 1&#xff0c;题目-中等 给你一个有序数组 nums &#xff0c;请你 原地 删除重复出现的元素&#xff0c;使得出现次数超过两次的元素只出现两次 &#xff0c;返回删除后数组…

区块链和人工智能的关系以及经典案例

目录 1.区块链与人工智能的关系 2.应用案例&#xff1a;基于区块链的医疗数据共享平台 2.1背景 2.2方案 2.3优势 2.4挑战 区块链技术和人工智能&#xff08;AI&#xff09;是两种不同的技术&#xff0c;但它们之间存在着互补关系。区块链技术提供了一种安全、透明、去中心…

Android Studio下载gradle超时问题解决

方法一 1. 配置根目录的setting.gradle.kts文件 pluginManagement {repositories {maven { urluri ("https://www.jitpack.io")}maven { urluri ("https://maven.aliyun.com/repository/releases")}maven { urluri ("https://maven.aliyun.com/repos…

Open-Sora:开源 Sora 复现方案,成本降低 46%

Colossal-AI 开源了完整的 Sora 复现架构方案 Open-Sora&#xff0c;声称可降低 46% 复现成本&#xff0c;并将模型训练输入序列长度扩充至 819K patches。 演示站点&#xff1a; https://ai.uaai.cn UAAI 官方论坛&#xff1a; www.jingyuai.com京娱AI Sora 算法复现方案 在 …

springboot256基于springboot+vue的游戏交易系统

游戏交易系统设计与实现 摘 要 在如今社会上&#xff0c;关于信息上面的处理&#xff0c;没有任何一个企业或者个人会忽视&#xff0c;如何让信息急速传递&#xff0c;并且归档储存查询&#xff0c;采用之前的纸张记录模式已经不符合当前使用要求了。所以&#xff0c;对游戏交…

[LeetCode][LCR143]树的子结构判断——递归

题目 LCR 143. 子结构判断 给定两棵二叉树 tree1 和 tree2&#xff0c;判断 tree2 是否以 tree1 的某个节点为根的子树具有相同的结构和节点值。注意&#xff0c;空树不会是以 tree1 的某个节点为根的子树具有相同的结构和节点值。 示例&#xff1a; 输入&#xff1a;tree1 …

3.9Code

基于顺序存储结构的图书信息表的图书去重 #include<iostream> #include<stdlib.h> #include<string.h>typedef int status;#define OK 1using namespace std;typedef struct{char no[50];char name[50];float price; }Book;typedef struct{Book* elem;int …

鸿蒙App动画、弹窗

动画 属性动画 https://developer.harmonyos.com/cn/docs/documentation/doc-references-V3/ts-animatorproperty-0000001478181445-V3 组件的某些通用属性变化时&#xff0c;可以通过属性动画实现渐变过渡效果&#xff0c;提升用户体验。支持的属性包括width、height、backg…

【软件工程】软件工程定义、软件危机以及软件生命周期

&#x1f338;博主主页&#xff1a;釉色清风&#x1f338;文章专栏&#xff1a;软件工程&#x1f338; 今日语录&#xff1a;What matters isn’t how others think of your ambitions but how fervently you cling to them. 软件工程系列&#xff0c;主要根据老师上课所讲提及…

【ubuntu】安装 Anaconda3

目录 一、Anaconda 说明 二、操作记录 2.1 下载安装包 2.1.1 官网下载 2.1.2 镜像下载 2.2 安装 2.2.1 安装必要的依赖包 2.2.2 正式安装 2.2.3 检测是否安装成功 方法一 方法二 方法三 2.3 其他 三、参考资料 3.1 安装资料 3.2 验证是否成功的资料 四、其他 …

基于机器学习的工业用电量预测完整代码数据

视频讲解: 毕业设计:算法+系统基于机器学习的工业用电量预测完整代码数据_哔哩哔哩_bilibili 界面展示: 结果分析与展示: 代码: from sklearn import preprocessing import random from sklearn.model_selection import train_test_split from sklearn.preprocessing…

vue element plus Typography 排版

我们对字体进行统一规范&#xff0c;力求在各个操作系统下都有最佳展示效果。 字体# 字号# LevelFont SizeDemoSupplementary text12px Extra SmallBuild with ElementBody (small)13px SmallBuild with ElementBody14px BaseBuild with ElementSmall Title16px MediumBuild w…

个人健康管理系统|基于微信小程序的个人健康管理系统设计与实现(源码+数据库+文档)

个人健康管理小程序目录 目录 基于微信小程序的个人健康管理系统设计与实现 一、前言 二、系统设计 三、系统功能设计 1、用户信息管理 2 运动教程管理 3、公告信息管理 4、论坛信息管理 四、数据库设计 1、实体ER图 五、核心代码 六、论文参考 七、最新计算机毕设…

日期问题---算法精讲

前言 今天讲讲日期问题&#xff0c;所谓日期问题&#xff0c;在蓝桥杯中出现众多&#xff0c;但是解法比较固定。 一般有判断日期合法性&#xff0c;判断是否闰年&#xff0c;判断日期的特殊形式&#xff08;回文或abababab型等&#xff09; 目录 例题 题2 题三 总结 …

万字完整版【C语言】指针详解~

一、前言 初始指针&#xff08;0&#xff09;&#xff1a;着重于讲解指针的概念、基本用法、注意事项、以及最后如何规范使用指针深入指针&#xff08;1&#xff09;&#xff1a;讲解指针变量常见的类型&#xff0c;如何去理解这些类型、最后就是如何正确的使用深入指针&#…

【sgExcelGrid】自定义组件:简单模拟Excel表格拖拽、选中单元格、横行、纵列、拖拽圈选等操作

特性&#xff1a; 可以自定义拖拽过表格可以点击某个表格&#xff0c;拖拽右下角小正方形进行任意方向选取单元格支持选中某一行、列支持监听selectedGrids、selectedDatas事件获取选中项的DOM对象和数据数组支持props自定义显示label字段别名 sgExcelGrid源码 <template&g…

Swift 入门学习:集合(Collection)类型趣谈-下

概览 集合的概念在任何编程语言中都占有重要的位置&#xff0c;正所谓&#xff1a;“古来聚散地&#xff0c;宿昔长荆棘&#xff1b;游人聚散中&#xff0c;一片湖光里”。把那一片片、一瓣瓣、一粒粒“可耐”的小精灵全部收拢、吸纳的井然有序、条条有理&#xff0c;怎能不让…

React Three Fiber快速入门

https://threejs-journey.com/lessons/what-are-react-and-react-three-fiber#学习笔记 1.基础知识 resize 填充模版 构建第一个场景 we didn’t have to create a scenewe didn’t have to create the webglrenderthe scene is being rendered on each framethe default…

ubuntu23.10安装搜狗拼音

1.添加fcitx仓库 sudo add-apt-repository ppa:fcitx-team/nightly 更新: sudo apt-get update 安装fcitx sudo apt-get install fcitx fcitx安装成功 切换输入系统为fcitx