pycharm创建项目

 在pycharm新建项目,选择Django
- 项目名称:自定义
 - 项目位置:自定义
 - 创建git:方便上传到github
 - 选择虚拟环境方式
venv - python解释器位置,和版本,如果你没有下载他会跳转到不同版本的供你下载
 - templates:创建模板文件,文件用法可django官网查看
 - app:创建app文件,文件用法可django官网查看
 
此时就创建好了
 
- 虚拟环境作用
 
- 不同项目用到不同版本的第三方模块时,才会用到虚拟环境
 - 具体的虚拟环境使用方法,可自行学习
 
- 模拟场景
 
给别人一个项目,使用相同的依赖,保证依赖版本不同,而不能运行的错误
 pip freeze > requirements.txt
 压缩文件,排除虚拟环境。
对方获得文件
 虚拟环境 + 安装依赖 + 运行项目
 pip install -r requirements.txt
Django项目创建
Django(Python):Django 是 Python 中最受欢迎的后端框架之一。它基于 MVC 架构,注重代码重用,易于学习,提供了广泛的库和 REST API 支持。
这里如果你没有用django启动项目,或是别的IDE,可以pip install django 这里默认下载最新版本
# 下载
pip install Django
# 创建django项目
django-admin startproject mysite
# 删除django项目
rm -r mysite
# 运行django项目,注意文件夹目录结构
python manage.py runserver
# 打开Web进程,点击 http://127.0.0.1:8000/
Starting development server at http://127.0.0.1:8000/
 
恭喜你,获得小火箭
 
  mysite
  ├── manage.py              [项目的管理工具]  
  └── mysite
      ├── __init__.py
      ├── settings.py        【配置文件,只有一部分。程序启动时,先读取django内部配置,再读settings.py】
      ├── urls.py			 【主路由,在里面编写  /xxx/xxx/xxx ---> index 】
      ├── asgi.py            【异步】
      └── wsgi.py            【同步,主】
 
__init__:作用
mysite
	__init__.py
	urls.py
import mysite 			调用的是__init__.py
import mysite.urls 		调用的是urls.py
 
settings.py和urls.py很重要,其余的文件不需要做改动
App创建
 cd 项目
 python manage.py startapp <appname>
 
App作用:给你的项目封装功能
  mysite
  ├── manage.py
  ├── mysite
  │   ├── __init__.py
  │   ├── asgi.py
  │   ├── settings.py
  │   ├── urls.py
  │   └── wsgi.py
  └── web
      ├── __init__.py
      ├── admin.py
      ├── apps.py
      ├── migrations
      │   └── __init__.py
      ├── models.py		[ORM,基于models可以对数据库进行简便的操作]
      ├── tests.py
      └── views.py      [视图函数]
 
如果有很多app项目,可以创建一个文件夹把它们集成起来
 name = 'web' 会变成 name = ‘apps.web’.不用自己调整
 
 最后可以创建一个REMIND.md来记录自己的开发需求,各模块的功能等
django纯净版
这个调不调都一样
# ===== settings.py =====
# Application definition
INSTALLED_APPS = [
    # 'django.contrib.admin',
    # 'django.contrib.auth',
    # 'django.contrib.contenttypes',
    # 'django.contrib.sessions',
    # 'django.contrib.messages',
    'django.contrib.staticfiles',
]
MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    # 'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    # 'django.contrib.auth.middleware.AuthenticationMiddleware',
    # 'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
ROOT_URLCONF = 'MyBlog.urls'
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',
            ],
        },
    },
]
                

![括号生成[中等]](https://img-blog.csdnimg.cn/direct/33be6493b2d248e185f4b0176bc5ba55.png)
















