Django_Intro


Django
  • Django is a high-level Python Web framework that encourages rapid devlopment and clean, pragmatic design.
  • It takes care of much of the hassle of Web development, so you can focus on writing your app without needing to reinvent the wheel
  • Web Framework


    Framework Architecture


    (frameworkには、関数、class、変数などが含まれます)
  • MVC Design Pattern(model-view-controller)
  • ユーザインタフェースからプログラムロジックを分離することにより、(역할 분담)アプリケーションのビジュアル要素または内部で実行される修復しやすいアプリケーション서로 영향없이を作成することができる.
  • DjangoはMTV Pattern
  • です

    MTV Pattern



  • Model
    : 사용자의 data:アプリケーションのデータ構造を定義します.데이터베이스의 기록을 관리

  • Template
    : 사용자가 보는 화면:ファイルの構造またはレイアウトを定義する

  • View
    :HTTP 요청을 수신とHTTP 응답을 반환:요청을 충족モデルを通過する必要があります
    :応答のフォーマットをtemplateに渡す
  • T -> V -> M
    Vは両者の間の仲裁者役

    Django Intro

    # django 설치
    pip install django
    # 현재 환경에 설치된 패키지 목록 확인
    pip list
    # 프로젝트 생성
    # 프로젝트 이름에 Python이나 Django에서 사용 중인 키워드 및 "-"(하이픈) 사용 불가
    django-admin startproject intro .
    # django 서버 실행
    python manage.py runserver
    # application 생성_일반적으로 복수형 권장
    python manage.py startapp pages

    プロジェクト構造


    プロジェクト構造
  • 데이터에 접근:pythonがこのディレクトリをpythonパッケージとして処理することを示します.
  • __init__.py: Asynchronous Server Gateway Interface
    :asgi.py非同期Webサーバ
  • への接続とコミュニケーションを支援
  • django 애플리케이션:アプリケーションのすべての設定を含む
  • settings.py:
  • 、指定されたサイトのurlと対応するビューの接続
  • urls.py: Web Server Gateway Interface
    :djangoアプリケーションのWebサーバへの接続とコミュニケーションを支援する
  • wsgi.py:Djangoプロジェクトと複数の方法でインタラクティブなコマンドラインユーティリティ
    ex) manage.py
  • アプリケーション構造


    アプリケーション構造
  • python manage.py <command> [options]:
  • 管理者ページの設定
  • admin.py:アプリケーション情報を含む
  • apps.py:アプリケーションで使用するモデルを定義する
  • models.py:
  • プロジェクトテストコードの作成
  • tests.py:view関数を定義する位置
  • コード作成順序


    URL - View - Template