Django学习之路(一)--初识django

1.先创建虚拟环境

为什么要创建虚拟环境呢?
你有两个项目同时进行,一个需要pytnon3.9和Django3.x版本的,一个需要python3.7和Django2.x版本的,不进行环境隔离的话,运行很麻烦,还不懂的话可以自行百度
可以用virtualenv(虚拟环境包)

2.兼容性问题

2.1Django对python版本的兼容性问题

发布系列最新发布主流支持结束扩展支持结束
3.2(LTS)3.2.102021年12月2024年4月
2.2(LTS)2.2.252019年12月2日2022年4月
1.11(LTS)1.11.292017年12月2日2020年4月1日
1.8(LTS)1.8.192015年12月1日2018年4月1 日
1.4(LTS)1.4.222013年2月26日2015年10月1日

未来版本

发布系列发布日期主流支持结束扩展支持结束
4.2(LTS)2023年4月2023年12月2026年4月

官方对照表: https://www.djangoproject.com/download/#supported-versions.

推荐这几个版本
Django 2.2 LTS(长期支持版本)
Django 3.2 LTS(长期支持版本)
Django 4.2 LTS(长期支持版本)

2.1Django对python版本的兼容性问题

Django 版本Python版本
2.23.5、3.6、3.7、3.8(2.2.8中增加)、3.9(2.2.17中增加)
3.03.6、3.7、3.8、3.9(在 3.0.11 中添加)
3.13.6、3.7、3.8、3.9(在3.1.3中添加)
3.23.6、3.7、3.8、3.9、3.10(在3.2.9中添加)

官方文档: https://docs.djangoproject.com/en/3.2/faq/install/#faq-python-version-support.

3.创建项目

django-admin startproject web

此时目录

|-- web
|   |-- __init__.py
|   |-- settings.py
|   |-- urls.py
|   `-- wsgi.py
`-- manage.py

目录说明:

  • web: 项目的容器。
  • manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。
  • web/__init__.py: 一个空文件,告诉 Python 该目录是一个 Python 包。
  • web/settings.py: 该 Django 项目的设置/配置。
  • web/urls.py: 该 Django 项目的 URL 声明; 一份由 Django 驱动的网站"目录"。
  • web/wsgi.py: 一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目。
cd web							  #进入目录
python manage.py startapp myhome  #新建myhome app
python manage.py startapp myadmin #新建myadmin app

数据库使用版本mysql5.7.25

4.更改配置文件

进入到web/settings.py文件中
修改

ALLOWED_HOSTS = ['*']
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'myadmin',# 自定义的APP
    'myhome'# 自定义的APP
]
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR,'templates')],#是指到  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',
            ],
        },
    },
]
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql', #  数据库引擎
        'NAME': 'bookshop',#选择数据库的名,请确认你的mysql中有这个库
        'USER':'root',	# 数据库登录用户名
        'PASSWORD':'123456',	# 数据库密码
        'HOST':'localhost',#数据库主机IP,如保持默认,则为127.0.0.1
        'PORT':'3306', # 数据库端口号,如保持默认,则为3306
    }
}
LANGUAGE_CODE = 'zh-Hans'#把英文改为中文
TIME_ZONE = 'Asia/Shanghai'#设置时区
USE_I18N = True #默认为True,是否启用自动翻译系统
USE_L10N = True# 默认False,以本地化格式显示数字和时间
USE_TZ = False# 默认值True。若使用了本地时间,必须设为False
STATIC_URL = '/static/'
STATICFILES_DIRS=[
    os.path.join(BASE_DIR,'static')
]

5.增加templates文件夹和static文件夹

|-- myadmin
|-- myhome
|-- static
|-- templates
|-- web
|-- manage.py

6.添加数据库

mysql -u root -p
create database bookshop default charset=utf8mb4;

7.给myadmin和myhome添加页面

web/myadmin/views.py
修改以下内容:

from django.shortcuts import render
from django.http import HttpResponse
# Create your views here.
def index(request):
    return HttpResponse("网站的后台页面")

web/myhome/views.py

from django.shortcuts import render
from django.http import HttpResponse
# Create your views here.
def index(request):
    return HttpResponse("网站的前台页面")

8.添加路由

web/web/urls.py

from django.contrib import admin
from django.urls import path,include

urlpatterns = [
    #path('admin/', admin.site.urls),
    path('myadmin/', include('myadmin.urls')),
    path('', include('myhome.urls')),
]

新建urls.py文件
web/myhome/urls.py

from django.urls import path
from . import views

urlpatterns = [
    path('', views.index,name="myhome_index"),
]

web/myadmin/urls.py

from django.urls import path
from . import views

urlpatterns = [
    path('', views.index,name="myadmin_index"),
]

9.运行

python manage.py runserver 0.0.0.0:80

可能会报错import MySQLdb as Database ModuleNotFoundError: No module named 'MySQLdb'

pip install mysqlclient
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Bruce-li__

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值