用pycharm创建一个django框架

注意解释器的选择和文件路径

创建完django项目

1.自动创建了一个templates目录(先删除)

2.把settings里的

TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [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',
],
},
},
]

改成

TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': []
,
'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',
],
},
},
]

即取消默认的templates文件夹

默认项目文件夹

settings.py【项目配置】

urls.py【url和函数的对应关系】

asgi.py【接收网络请求(不要动的)】

wsgi.py【接收网络请求(不要动的)】

创建app

找到manage.py文件目录

调用python startapp+app名称

python manage.py startapp cnnDjango

完成!

C:\Users\HP\.conda\envs\pytorch-gpu\python.exe "D:\pycharm\PyCharm 2022.1.3\plugins\python\helpers\pycharm\django_manage.py" startapp cnnDjango E:/pyzixue/cnn_django
Tracking file by folder pattern: migrations Following files were affected
E:\pyzixue\cnn_django\cnnDjango\migrations\__init__.py
进程已结束,退出代码0

现在总体文件是这样

卷 game 的文件夹 PATH 列表
卷序列号为 B0AB-9373
E:.
├─.idea
│ └─inspectionProfiles
├─cnnDjango
│ └─migrations
└─cnn_django

models.py【对数据库操作】

views.py【函数】

快速上手

确保app已经注册【settings.py]

1、找到apps.py 找到

class CnndjangoConfig(AppConfig):
default_auto_field = 'django.db.models.BigAutoField'
name = 'cnnDjango'

2、返回settings.py找到已经安装的app加进去

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]

加入进去后

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'cnnDjango.apps.CnndjangoConfig',
]

编写url和视图函数对应关系【urls.py】

先将views导入完成

不用默认的admin

修改成

from cnnDjango import views
urlpatterns = [
#path('admin/', admin.site.urls),
#www.xxx.com/index/ -> 函数
path('index/', views.index),
]

编写视图函数【views.py】

在views.py中定义index函数

from django.shortcuts import render,HttpResponse

def index(request):
return HttpResponse('欢迎使用!')

启动django项目

命令行启动

python manage.py runserver

pycharm启动

右上角启动运行

成功之后可以访问

http://127.0.0.1:8000/index/

设置模板文件夹

在app文件夹下面创建templates文件夹

在templates创建html文件夹即可在【views.py】中使用函数跳转

# 会去app目录下的templates目录寻找xxx.html文件
# 根据app注册的顺序,逐一查找
return render(request,"XXX.html")

创建静态文件夹

在app目录下创建一个static文件夹

在html中可以这样读取static文件内容

{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<img src="{% static 'img/1.png' %}" alt="">
</body>
</html>

这么写的优势是如果想改变整个static文件目录

可以去【settings.py】中改变一下代码文件

# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/3.2/howto/static-files/ STATIC_URL = '/static/'

改变static即可改变所有静态文件目录

django的模板语法

在【views.py】中

return render(request,'xxx,html',dict)

意为往xxx.html传入一个字典

在html生成中可以调用dict的内容

{% for item in dict%}
<li>{{ item.xxx }}</li>
{% endfor %}

连接mysql模块

不需要Mysql数据库 + pymysql

使用django内置的orm框架

先安装模块

pip install mysqlclient

但是注意它无法创建数据库,所以数据库得我们自己创建

1.先进入msql

show databases

2.创建数据库

CREATE database 数据库名字 DEFAULT CHARSET utf8 COLLATE uft8_general_ci;

3.django连接数据库

在【settings.py】找到

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': BASE_DIR / 'db.sqlite3',
}
}

修改成

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

django创建表

在【models.py】文件中操作表

定义类

from django.db import models

# Create your models here.
class UserInfo(models.Model):
name = models.CharField(max_length=32)
pwd = models.CharField(max_length=64)
age = models.IntegerField()

写好之后在【manage.py】目录文件

python manage.py makemigrations
python manage.py migrate

执行这两个命令即可更新mysql

前提:你的app已经注册!

在项目同名的【init.py】文件中加入

import pymysql
pymysql.install_as_MySQLdb()

表的增删改查

在【views.py】文件中

from app01.models import UserInfo
def orm(request):
#测试ORM操作表中的数据
UserInfo.objects.create(name = 'xxxx')
#删除
UserInfo.objects.filter(id=3).delete()
#获取数据
data_list = UserInfo.objects.all()
for obj in data_list:
print(obj.od,obj.name)
#获取第一行
UserInfo.objects.filter(id=3).first()
#更新数据
UserInfo.objects.all().update(age = 18)
UserInfo.objects.filter(id=2).update(age = 18)
return HttpResponse("成功")

用pycharm创建一个django框架的更多相关文章

  1. 初学者用pycharm创建一个django项目和一个app时需要注意的事项

    如何新建一个djiango项目: 1.在pycharm中点击File,选择new project,点击djiango,在右面的Location中将untitile改为你的项目名,其余部分注意见下图: ...

  2. 使用Pycharm创建一个Django项目

    在使用python写脚本一段时间后,想尝试使用Django来编写一个python项目,现做以下记录备忘: 1.创建项目 如果本地没有安装与所选python版本对应Django版本,pycharm会自动 ...

  3. Pycharm创建一个Django项目

    1.创建项目 如果本地没有安装与所选python版本对应Django版本,pycharm会自动下载相应的版本: 创建后运行项目,默认页面为http://127.0.0.1:8000/,打开后: 出现上 ...

  4. Django(博客系统):基于pycharm如何一个django工程下创建多个app

    背景:通常我们创建一个django系统时,为了把业务模块划分清楚往往会把一个独立的业务模块放到一个app中,如果多个独立的业务模块就会创建多个app,一般情况下为了更好的管理这些app,会把他们都存放 ...

  5. 创建一个Django项目

    创建一个django项目: 1. django-admin  startproject student_manage(项目名) 2. cd student_manage python manage.p ...

  6. 创建一个Django项目的基本步骤

    创建一个Django 的常规步骤 1.寻找一个磁盘目录,比如 e: 2.django-admin startproject ops 3.cd ops 4.python manage.py starta ...

  7. Django之真正创建一个django项目

    真正创建一个django项目 1 创建Django项目     :new-project 2 创建APP :  python manager.py startapp app01 3 setting 配 ...

  8. django学习笔记【001】django版本的确定&创建一个django工程

    2.3 查看当前的django版本 python3. -m django --version 2.3.1 创建一个django工程 django-admin startproject mysite 在 ...

  9. Python-Django学习笔记(二)-创建一个Django项目与应用

    1.创建一个Django项目 打开cmd命令行,设置好工作目录(cd 目录路径),然后输入 django-admin startproject projectname #必须安装好Django才可以执 ...

  10. 如何创建一个Django项目

    Django 软件框架 软件框架是由其中的各个模块组成,每个模块负责特定的功能,模块与模块之间相互协作来完成软件开发. MVC简介 MVC框架的核心思想是:解耦,让不同的代码块之间降低耦合,增强代码的 ...

随机推荐

  1. 1、MyBatis简介

    1.1.MyBatis历史 MyBatis最初是Apache的一个开源项目iBatis, 2010年6月这个项目由Apache Software Foundation迁 移到了Google Code. ...

  2. 混合开发模式是否可以在App备案制度下突围

    网站 ICP 备案已施行了很久,我们也非常清楚必须在进行 ICP 备案后,网站才能在大陆范围合法运营,并且用户可以通过域名正常访问网站. 但是月初出了新规,明年起,国内的 App 也要像网站一样进行备 ...

  3. 三维模型OSGB格式轻量化纹理压缩关键技术分析

    三维模型OSGB格式轻量化纹理压缩关键技术分析 在三维模型应用中,纹理是一个十分重要的因素,可以使得模型更加真实.精细.随着移动设备和网络传输速度的限制,纹理数据也需要进行轻量化处理,而OSGB格式纹 ...

  4. 解决Eclipse中启动Tomcat报unable to start within 45 seconds问题

    启动项目的时候报Server Tomcat v8.0 Server at localhost was unable to start within 45 seconds. If the server ...

  5. 文盘Rust——子命令提示,提高用户体验

    上次我们聊到 CLI 的领域交互模式.在领域交互模式中,可能存在多层次的子命令.在使用过程中如果全评记忆的话,命令少还好,多了真心记不住.频繁 --help 也是个很麻烦的事情.如果每次按 'tab' ...

  6. Solution -「CF 959E」Mahmoud and Ehab and the xor-MST

    Description Link. 一完全图有 \(n\) 个节点 \(0,...,n-1\),其中边 \((i,j)\) 的权值为 \(i\oplus j\),其中 \(\oplus\) 为位异或操 ...

  7. Linux升级至glibc-2.14步骤

    Linux升级至glibc-2.14步骤 查看gcc版本命令: strings /lib64/libc.so.6 |grep GLIBC_ glibc安装 首先, 点击此处下载glibc2.14下载, ...

  8. umich cv-1

    UMICH CV Image Classification---KNN 在本节课中,首先justin老师为我们介绍了图像分类了基础概念以及其用途,这里就不多涉及了 接着我们思考图像分类问题,如果我们想 ...

  9. destoon运行流程二次开发必看

    <?php 代码首先包含common.inc.php文件 在common.inc.php文件中,首先定义常量. define('IN_DESTOON', true); define('IN_AD ...

  10. Python基础——字符编码、文件处理

    文章目录 字符编码 一 引入 二 知识储备 2.1 三大核心硬件 2.2 文本编辑器读取文件内容的流程 2.3 python解释器执行文件的流程 2.4 总结 三.字符编码介绍 3.1 什么是字符编码 ...