Django project setting
仮想環境の作成
データベースの作成
MySQLにログインできるので、この問題を後回しにしますが、まだ時間があれば、この問題をできるだけ早く解決すべきです.--;
パッケージのインストール
Djangoプロジェクトの作成
Settings.py
my_settings.py(DATABASES,SECRET KEY)の作成
corsheader
サーバーの実行
Git & Github
**manage.pyが存在するディレクトリ**でgitに初期化して管理します.
Gitを使用する場合、共有すべきでないセキュリティ情報がいくつかあります.これらの情報を区別するために、Gitignoreファイルを作成して管理できます.
gitignore.ioサイトで使用する環境キーワードを作成すると、自動的に作成されます.gitignoreファイルで定義するコードを生成します.
ex) python, pycharm, VisualStudioCode, vim, macOS, Linux, zsh...
add & commit
# 가상환경 생성
conda create -n "가상환경 이름" python=3.8
conda activate "가상환경 이름"
仮想環境はバスケット式の概念であり,自分に必要なPython環境を構築するために必要なモジュールのみを含むといえる.したがって、独立した環境を作成して作業することができ、別のコンピュータまたは他の環境で同じプログラムを実行すると、作業環境を固定できます.したがって、構成すると、作業環境とバージョンの問題で実行できない問題を回避できます.データベースの作成
$ mysql -u root -p
mysql> create database NAME character set utf8mb4 collate utf8mb4_general_ci;
プロジェクトで使用するデータベースを生成します.私の場合、mysqlを実行中に次のエラーが発生しました.# mysql 데몬 재실행
sudo /etc/init.d/mysql restart
sudo mysql -u root -p
このようにmysqlにアクセスしています.MySQLにログインできるので、この問題を後回しにしますが、まだ時間があれば、この問題をできるだけ早く解決すべきです.--;
パッケージのインストール
$ pip install django
# 이후에 MySQL server에 접속하기 위한 package
$ pip install mysqlclient
Framework djangoをインストールし、mysqlclientをインストールしてmysqlサーバに接続します.Djangoプロジェクトの作成
django-admin startproject 프로젝트명
cd 프로젝트명
次のコードを使用してdjangoプロジェクトを作成し、プロジェクト名のディレクトリに移動します.Settings.py
ALLOWED_HOSTS = ['*']
# 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',
]
ALLOWED HOSTSを設定し、admin、csrf、auth機能を使用しないため、それぞれコメント処理を行います.from django.urls import path
urlpatterns = [
]
また、プロジェクト名/urls.pyもadmin機能を削除し、以下のように変更します.my_settings.py(DATABASES,SECRET KEY)の作成
# 프로젝트명 디렉토리인지 현재 위치 확인
touch my_settings.py
SECRET KEY、DATABASEなどのセキュリティ情報を参照メソッドで共有しないように、個別のリファレンスファイル(my settings.py)を作成します.# my_settings.py
DATABASES = {
'default' : {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'DATABASE 명',
'USER': 'DB접속 계정명',
'PASSWORD': 'DB접속용 비밀번호',
'HOST': '127.0.0.1',
'PORT': '3306',
}
}
SECRET_KEY = '시크릿키'
# settings.py에 있는 secret_key 를 사용합니다.
作成したmy settings.pyにDB情報とSECRET KEYを入力します.# settings.py
from pathlib import Path #기존 settings.py코드
from my_settings import DATABASES, SECRET_KEY
...
DATABASES = DATABASES
SECRET_KEY = SECRET_KEY
my_settings.pyを設定します.djangoがpyを認識できるように、次のコードを追加します.corsheader
p install django-cors-headers
クロスドメインの問題を防止するためにCorsheaderをインストールします.リファレンス INSTALLED_APPS = [
...
'corsheaders'
]
MIDDLEWARE = [
...
'corsheaders.middleware.CorsMiddleware',
...
]
インストールしたパッケージを使用するように設定します.pyのINSTALLEDアプリとMIDDLEWAREに追加します.APPEND_SLASH = False
最後に、次のコードを追加して、エラー/関連エラーを解消します.サーバーの実行
python manage.py runserver
インストールが完了したら、サーバーが正常に動作しているかどうかを確認します.Git & Github
**manage.pyが存在するディレクトリ**でgitに初期化して管理します.
git init
gitignoreGitを使用する場合、共有すべきでないセキュリティ情報がいくつかあります.これらの情報を区別するために、Gitignoreファイルを作成して管理できます.
gitignore.ioサイトで使用する環境キーワードを作成すると、自動的に作成されます.gitignoreファイルで定義するコードを生成します.
ex) python, pycharm, VisualStudioCode, vim, macOS, Linux, zsh...
touch .gitignore
まずgitignoreファイルを作成します.############################
# gitignore.io 결과 전체 복사 #
############################
# 가장 하단 my_settings.py 추가하기
my_settings.py
gitignoreのWebサイトにキーワードを作成し、その内容を貼り付けます.もう一つのセキュリティファイルmy settingsがあります.pyも追加します.add & commit
git add .
git commit -m "Add: Django Project Setting"
Github repository作成後# default branch master -> main
git branch -M main
# remote 추가
git remote add origin "repository주소"
pushgit push origin main
完了した初期設定をメインブランチgithubにプッシュします.Reference
この問題について(Django project setting), 我々は、より多くの情報をここで見つけました https://velog.io/@cghy4862/Django-project-settingテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol