[Django] Project Initial Setting
13669 ワード
Line Amigosプロジェクトにより、プロジェクトの初期設定の重要性がわかりました.
参考文献による模倣は慣習的に行われているが、一つ一つ意味を丁寧に理解しているわけではないので、FLOプロジェクトの前に書いて整理しておく.
プロジェクトの進行を通して、以下のことを学びました.
Gitにソースコードを共有しますが、共有すべきでないコードと共有したくないコードをファイルに追加する必要があります.後で書く
しかし驚くべきことに、セキュリティに関するファイルがアップロードされると、Github側にセキュリティの問題があり、警告(?)を受けます.これは筆者が正確に知っていることです.いいえ、このように整理してはいけません.
逆に、データベースに入るcsvファイルは、なぜ?!(なぜコンサルティングで終わるのか…)
大いに追加が必要な部分(my settings.pyは通常、後で作成および追加されますが、ファイルの説明に従ってください) 注釈処理部 に分かれる.
未使用のappコメント:
gitignoreにgitで共有したくないファイルが含まれていることを知っているかもしれません.
私たちが使っているDB
前のプロジェクトでは、
urls.pyは各appのビューです.py
逆にapp name/urlsです.pyの各アプリケーションで、ビューのパスの前に
チームプロジェクトを行うことは、チームメンバーと同じ環境で作業することを意味します.プロジェクトにインストールされているライブラリを特定して追加します.
暗号複雑度検査プロセス(n) パスワード の入力と確認匿名ユーザ(y) を削除する.リモート接続は許可されていませんか?(y) 削除テストDB(n) previlegeテーブル(y) を再ロードするかどうか-uオプションMySQLに接続するユーザーのIDを指定します.ここではrootユーザーとして接続されています. -pオプションは、パスワードを入力することを示します.
manage.pyが存在するパスで
参考文献による模倣は慣習的に行われているが、一つ一つ意味を丁寧に理解しているわけではないので、FLOプロジェクトの前に書いて整理しておく.
gitignoreの作成
プロジェクトの進行を通して、以下のことを学びました.
Gitにソースコードを共有しますが、共有すべきでないコードと共有したくないコードをファイルに追加する必要があります.後で書く
my_settings.py
は공유하지 말아야 할 것
と命名すべきだと思います.これはsecret keyと暗号化とトークンのための特定のアルゴリズムが命名されているため、会社のセキュリティの問題を引き起こす可能性があります.しかし驚くべきことに、セキュリティに関するファイルがアップロードされると、Github側にセキュリティの問題があり、警告(?)を受けます.これは筆者が正確に知っていることです.いいえ、このように整理してはいけません.
逆に、データベースに入るcsvファイルは、なぜ?!(なぜコンサルティングで終わるのか…)
project_name/settings.pyの作成
大いに
from my_settings import DATABASES, SECRET_KEY, ALGORITHM
SECRET_KEY = SECRET_KEY
ALGORITHM = ALGORITHM
まず、corsの処理を支援するためにdjango-cors-headers
をインストールします.pip install django-cors-headers
生成されたapp+24579142を追加未使用のappコメント:
corsheaders
、admin
、csrf
INSTALLED_APPS = [
'user', # 추가된 app_name
'product', # 추가된 app_name
'review', # 추가된 app_name
'order', # 추가된 app_name
'corsheaders', # cors를 처리하는데 도움을 줄 app
# 'django.contrib.admin',
# 'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
必要なMIDDLEWAREを追加し、未使用のMIDDLEWAREにコメントMIDDLEWARE = [
'corsheaders.middleware.CorsMiddleware', # 추가 된 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',
]
DATABASESはmy settingspyに移行したので.DATABASES = DATABASES
必要な部分ではありませんが、私たちのDBに適用されるauth
をソウルに変更するためにLANGUAGE_CODE = 'en-us'
TIME_ZONE = 'Asia/Seoul'
USE_I18N = True
USE_L10N = True
USE_TZ = False
グリコファイルの最後の下部に追加するコード#REMOVE_APPEND_SLASH_WARNING
APPEND_SLASH = False
##CORS
CORS_ORIGIN_ALLOW_ALL=True
CORS_ALLOW_CREDENTIALS = True
CORS_ALLOW_METHODS = (
'DELETE',
'GET',
'OPTIONS',
'PATCH',
'POST',
'PUT',
)
CORS_ALLOW_HEADERS = (
'accept',
'accept-encoding',
'authorization',
'content-type',
'dnt',
'origin',
'user-agent',
'x-csrftoken',
'x-requested-with',
)
Djangoで「Optional」Query文を実際に記述する方法を知りたい場合は、最後に次のコードを追加します.
my_settings.pyの作成
gitignoreにgitで共有したくないファイルが含まれていることを知っているかもしれません.
私たちが使っているDB
前のプロジェクトでは、
표준 시간대
、DATABASES
、SECRET_KEY
、ALGORITHM
を隠しました.from my_settings import DATABASES, SECRET_KEY, ALGORITHM
通常、外部API(SNS登録、AWS接続情報など)もmy settingsである.pyに記入するurls.pyの作成
urls.pyは各appのビューです.py
<project_name/urls.py>
lineamigos/urls.py
from django.urls import path, include
urlpatterns = [
path('user', include('user.urls')),
path('product',include('product.urls')),
path('review',include('review.urls')),
path('order',include('order.urls'))
]
<app_name/urls.py>
user/urls.py
from django.urls import path
from user.views import SignUpView, SignInView
urlpatterns = [
path('/signup', SignUpView.as_view()),
path('/signin', SignInView.as_view()),
]
project_name/urls.pyに書かれた各アプリケーションのパスは、/
と書かないのがRESTful API会議で正しいことを学びました.逆にapp name/urlsです.pyの各アプリケーションで、ビューのパスの前に
path('/name', name_of_view.as_view()),
Requitrement.txtの作成
チームプロジェクトを行うことは、チームメンバーと同じ環境で作業することを意味します.プロジェクトにインストールされているライブラリを特定して追加します.
pip freeze # 현재 로컬환경에 설치된 파이썬 모듈 정보를 보는 명령어
pip freeze > requirements.txt # pip freeze 의 결과를 requirements.txt에 기록하는 것
MySQLのインストールとデータベースの作成
MySQLのインストール
brew install mysql
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
MySQL設定
mysql.server start
プリファレンスを開始するには、次の手順に従います.mysql_secure_installation
mysql.server start
mysql -u root -p
上記のコマンドを入力すると、mysqlを使用するためにルートパスワードを入力できます.mysqlに接続した後
create database <NAME_of_DB( usually'project_name'> character set utf8mb4 collate utf8mb4_general_ci;
Djangoの接続
pip install mysqlclient
Django、MySQL接続の検証
manage.pyが存在するパスで
python manage.py migrate
Reference
この問題について([Django] Project Initial Setting), 我々は、より多くの情報をここで見つけました https://velog.io/@petersoh/Django-Project-Settingテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol