classonline項目記錄——day1 初始配置

項目環境搭建

一、創建Django項目

  1. 創建一個虛擬環境
mkdir pythonenvs
cd pythonenvs & virtualenv django1 -p /usr/bin/python3

2.安裝django

pip3 install django (此時版本是 2.2.12)

3.創建項目

django-admin startproject classonline

4.pycharm ssh連接解釋器

二、配置項目

1、配置模板文件路徑

  • 創建 templates 文件夾
  • 使用 os.path.join(BASE_DIR, ‘templates’) 加入模板路徑

2、安裝 mysqlclient

  • 更新源 apt update
  • 安裝依賴庫 libmysqlclien-dev
  • pip3 install mysqlclient (此時版本是 1.4.6)

3、配置數據庫引擎

  • 創建數據庫 create database classonline charset=‘utf8’
  • 創建一個數據庫管理用戶
create user 'yejue'@'host';
grant all privileges on classonline.* to 'yejue'@'%' identified by 'yejue@123';
  • django settings 數據庫引擎配置
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'classonline',
        'USER': 'yejue',
        'PASSWORD': 'yejue@123',
        'PORT': '3306',
        'HOST': '172.16.8.128'
    }
}

4、配置redis緩存

  • 配置
# Cache
CACHES = {
    'default': {
        'BACKEND': 'django_redis.cache.RedisCache',
        'LOCATION': [
            'redis://127.0.0.1:6379/0'
        ],
        'option': {
            'CLIENT_CLASS': 'django_redis.client.DefaultClient'
        }
    },
    'session': {
        'BACKEND': 'django_redis.cache.RedisCache',
        'LOCATION': [
            'redis://127.0.0.1:6379/1'
        ],
        'option': {
            'CLIENT_CLASS': 'django_redis.client.DefaultClient'
        }
    }
}
# session 存儲緩存設置
SESSION_ENGINE = 'django.contrib.sessions.backends.cache'
SESSION_CACHE_ALIAS = 'session'
  • 安裝 django-redis
    pip install django-redis (此時的版本是 4.11.0)

5、配置日誌器

參照 https://www.cnblogs.com/nichengshishaonian/p/11550201.html

# 配置日誌器,記錄網站的日誌信息
LOGGING = {
    # 版本
    'version': 1,
    # 是否禁用已存在的日誌器
    'disable_existing_loggers': False,
    'formatters': {
        'verbose': {
            'format': '%(levelname)s %(asctime)s %(module)s %(lineno)d %(message)s'
        },
        'simple': {
            'format': '%(levelname)s %(module)s %(lineno)d %(message)s'
        },
    },
    'filters': {
        'require_debug_true': {
            '()': 'django.utils.log.RequireDebugTrue',
        },
    },
    'handlers': {
        'console': {
            'level': 'DEBUG',
            'filters': ['require_debug_true'],
            'class': 'logging.StreamHandler',
            'formatter': 'simple'
        },
        'file': {
            'level': 'INFO',
            'class': 'logging.handlers.RotatingFileHandler',
            'filename': os.path.join(BASE_DIR, "logs/logs.log"),  # 日誌文件的位置,必須先手動創建這個logs文件夾
            # 單個日誌文件最大字節數
            'maxBytes': 300 * 1024 * 1024,
            # 日誌文件個數
            'backupCount': 10,
            'formatter': 'verbose'
        },
    },
    'loggers': {
        'django': {  # 定義了一個名爲django的日誌器
            'handlers': ['console', 'file'],
            'propagate': True,
            'level': 'INFO',  # 日誌器接收的最低日誌級別
        },
    }
}

6、配置時區

# 語言
LANGUAGE_CODE = 'zh-Hans'
# 時區
TIME_ZONE = 'Asia/Shanghai'

7、靜態文件

  • 創建 static 文件夾
  • 配置
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'static')
]

8、apps

  • 創建一個 apps 目錄裝app
  • 加入環境變量,優化導入
# 加入環境變量 優化導入
sys.path.insert(0, BASE_DIR)
sys.path.insert(1, os.path.join(BASE_DIR, 'apps'))
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章