[Django] Kickoff day1
始める前に...
注意:張高公式サイトのチュートリアルリンク/24579152
0-1. 仮想環境の起動
#가상환경 이름 : project
source activate project
0-2. 長期プロジェクトの開始
#프로젝트 디렉토리명 : mysite
django-admin startproject mysite
0-3. ハンドヘルドアプリケーションの作成
#manage.py가 있는 디렉토리 내에서 실행
#앱 이름 : polls
python manage.py startapp polls
0-4. サーバーの実行
python manage.py runserver
開発サーバドライバは、ローカルIP 張高傑教程リンクにあります.プロジェクトディレクトリの構成
manage.py
:長期プロジェクトとインタラクティブなコマンドラインユーティリティ--init--.py
から分かるように、ディレクトリにはプロジェクトのPythonパッケージが格納されている.ポーリング・アプリケーションの生成時に作成されたディレクトリの構成
1. URL
mysite/urls.py
およびpolls/urls.py
url 2つ.pyが必要です.後者は直接生成する必要がある..py
を省略)1-1.
親urlsモジュールでは、すべてのurlモードの文字列を取得してチェックします.
-
path
は、「policy/」を含むurlをpolicypackageのurlsモジュールに送信する.-
include
は、他のurlsモジュールを参照するのに役立ちます.1-2.
アプリケーションディレクトリのurlsモジュールはurlアドレスと対応するviewモジュールに関連付けられています.polls/urls.pyで始まるurlアドレスはすべて「policy/」で始まります.
−
name
と名付けられ、その後polls:index
として使用される.(urlsモジュールでapp_name
を使用してポーリング値を指定できます)これは、どこでも参照でき、ファイルを変更するだけでプロジェクト内のすべてのurlモードを変更できる感謝の機能です.2. Database
デフォルトではSQLiteが使用され、今回の練習では変更されません.他のデータベースを使用する場合は、
settings.py
からDATABASES設定を変更します.(
settings.py
では、時間帯設定のアプリケーション設定を変更する必要があります.その後、関連内容を整理する部分で詳しく説明します)2-1. モデリング
まず、データベースの構造を定義します.データを直感的に整理するためにAQuery Toolを使用して表形式で作成してみます.問題と選択には一対一の関係がある.
各プロパティが持つデータ型を、データベース内のフィールドと一致させます.
(Question)
-question_text :
CharField
-pub_date : DateTimeField
(Choice)-question :
ForeignKey
-choice_text : CharField
-votes : IntegarField
(注意事項)CharField
はmax lengthを入力する必要があります.デフォルト値は
IntegarField
で指定できます.2-2. テーブルの作成
まず、テーブル操作ファイルを作成し、実際のテーブルを作成します.
#테이블 작업파일 생성
python manage.py makemigrations polls
蒋高さんに、モデルの変更とこの変更をmigration
に保存したいと伝えました.python manage.py sqlmigrate polls 0001
migration
で内部で実行されるSQL文が表示されます.(実際にテーブルを作成しないため、実際のテーブルを作成するにはmigrate
を実行する必要があります.) 手動で指定することなく、PK値
id
およびFK値question_id
を自動的に生成することができる.テーブル名は、アプリケーション名+モデル名の組み合わせによって自動的に生成されます.#실제 테이블 생성
python manage.py migrate
モデルに関連付けられたテーブルをデータベースに作成します.Reference
この問題について([Django] Kickoff day1), 我々は、より多くの情報をここで見つけました https://velog.io/@e2joo418/Django-Kickoff-day1テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol