Ubuntu安装Python
1.版本对应
Python和Django版本对应关系
Django version | Python versions |
---|
2.2 | .5, 3.6, 3.7, 3.8 (added in 2.2.8), 3.9 (added in 2.2.17) | 3.1 | 3.6, 3.7, 3.8, 3.9 (added in 3.1.3) | 3.2 | 3.6, 3.7, 3.8, 3.9, 3.10 (added in 3.2.9) | 4.0, 4.1 | 3.8, 3.9, 3.10 |
Connector/Python Version | MySQL Server Versions | Python Versions | Connector Status |
---|
8.0 | 8.0, 5.7, 5.6, 5.5 | 3.9, 3.8, 3.7, (3.6 before 8.0.29), (2.7 and 3.5 before 8.0.24) | General Availability | 2.2 (continues as 8.0) | 5.7, 5.6, 5.5 | 3.5, 3.4, 2.7 | Developer Milestone, No releases | 2.1 | 5.7, 5.6, 5.5 | 3.5, 3.4, 2.7, 2.6 | General Availability | 2.0 | 5.7, 5.6, 5.5 | 3.5, 3.4, 2.7, 2.6 | GA, final release on 2016-10-26 | 1.2 | 5.7, 5.6, 5.5 (5.1, 5.0, 4.1) | 3.4, 3.3, 3.2, 3.1, 2.7, 2.6 | GA, final release on 2014-08-22 |
2.创建Django工程
通过配置好的python环境下使用
django-admin.py startproject mysite
或者使用Pycharm——File -> New Project -> Django中创建工程
- manage.py ----- Django项目里面的工具,通过它可以调用django shell和数据库等。
- settings.py ---- 包含了项目的默认设置,包括数据库信息,调试标志以及其他一些工作的变量。
- urls.py ----- 负责把URL模式映射到应用程序。
进入mysite创建app
python manage.py startapp appname
在settings.py文件中
- ALLOWED_HOSTS列表为了防止黑客入侵,只允许列表中的ip地址访。
ALLOWED_HOSTS = ['*'] 允许任何ip访问 - 将创建的appname添加到INSTALLED_APPS。
INSTALLED_APPS = [ 'appname', ] 注意后面必须要有个逗号! - Django中CSRF中间件的工作原理及form表单提交需要添加{% csrf_token %}防止出现403错误,CSRF # 表示django全局发送post请求均需要字符串验证,功能:防止跨站请求伪造的功能
- DATABASES 配置数据库
DATABASES = {
'default': {
},
}
- STATIC_ROOT:在这个文件里边的目录会当成静态文件处理。
- STATIC_URL:URL映射,指定静态目录的URL,默认的是"/static/"。
- STATICFILES_DIRS:指定一个工程里边哪个目录存放了与这个工程相关的静态文件,是一个列表。
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static'),
os.path.join(BASE_DIR, 'upload'),
]
4.配置mysql
需要注意的是django2.2版本的暂时还不支持pymysql,python3.5版本不再支持MySQLdb模块!在settings.py文件配置数据库。
pip install pymysql
在settings.py文件配置数据库。
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'djangodb',
'USER': 'username',
'PASSWORD': 'password',
'HOST': '127.0.0.1',
'PORT': '3306',
},
}
在mysql数据中创建一个djangodb的数据库,然后在mysite/init.py文件中加入以下代码
import pymysql
pymysql.install_as_MySQLdb()
启动django容器
python manage.py runserver
初始化数据表
python manage.py makemigrations
python manage.py migrate
|