Djangoの前に知っておきます

 

Webアプリケーションとは何ですか?

  より簡単に、ブラウザ、背景からのデータのサイト検索を介してWebサイトにアクセスし、手順、ユーザに適切なインタフェースを表示することです。

 

HTTPプロトコルは何ですか?

  ハイパーテキスト転送プロトコル:クライアントの形式およびサーバーメッセージの送信を指定します

 

  4つの特性:

    アプリケーション層プロトコル1、TCP / IPプロトコルベースのアクション

    要求応答に基づいて、2、(一次応答は、要求に対応します)

    3、無の状態(クライアントを持たないで、すべてのは、ストライキとしてあなたを扱います)

    4、いかなるリンク(HTTP要求を切断した直後に受け付けられなかったが、TCPを切断しないであろう)

拡張:定数のリンクを維持するために使用されるwebsoceke技術を、逆にするリンクがないため。

 

  リクエストデータ形式:

    最初の行要求

    要求ヘッダ(K、Vキーと値のペアの束)

          (ここでは何も表さない、スペースではありません)

    リクエストボディ(POSTデータ要求内で運ば)(から離間疑問符の後にURLのパラメータを搬送するGET要求は、最初のデータは安全であり、第二は、伝送の大きさも制限されています)

  データ形式に対応して:

    応答の最初の行

    レスポンスヘッダ(パイルK、キーと値のペアをV)

            (スペース)

    レスポンスボディ(ポストデータリクエストで運ば)

 

  応答ステータスコード:

    1xxサーバーは、データが処理されている、あなたは追加のデータを提出し続けることができます正常に受信しました

    2XX要求は、サーバーがあなたにあなたの要求されたデータを送信する必要があります成功します

    3xxリダイレクト

    4xxの要求されたリソースが存在しません。

    5xxのサーバーエラー

 

  静的および動的なページ

    静的なページ:

      ページ上のデータは同じ年、死んで書かれています。

    動的なページ:

      ページ上のデータが動的なバックエンドから取得されます

      例えば、バックエンドは、現在の時刻を取得します

      データを取得するために、バックエンドデータベースには、フロントページに渡されます

 

  テンプレートのレンダリング

    直接使用フロントページにバックエンドデータによって生成された(及びフロントページを柔軟データを操作することができる)テンプレート構文>>>

    テンプレートのテンプレートの構文をレンダリングすることは、サードパーティのモジュールに依存する必要があります

    Jinja2のインストールPIP

 

    直接Pythonの運転データに似た構文を使用してJinja2のサポートフロントエンドのテンプレート構文

    <P> {{user_dic}} </ P> 2つのブレースを覚え

    <P> {{user_dic.name}} </ P>
    <P> {{user_dic [ 'パスワード']}} </ P>
    <P> {{user_dic.get( '名前')}} </ P>

    

    値は、一般に、それを横断することができ、その後、フロントエンドインタフェースリストに追加しました

    {user_dictの%のユーザーの%}ここで設定辞書リストを形成するものと解釈される[{}、{}を{}、{}]
      <TR>
        <TD> user.id {{}} </ TD>
        < TD> user.name {{}} </ TD>
        <TD> user.password {{}} </ TD>
      </ TR>
    {%} ENDFOR%

 

ウェブフレームフローチャートLiteの

  

Webフレームワークとは何ですか?

現在、三つの主要なPythonのWebフレームワーク

  ジャンゴ:Webフレームワークの世界の空母に相当し、大規模かつ機能モジュールの多くが付属しています(短所:ドキュメントのより多くのコンテンツをもたらすのには大きすぎます)

   フラスコ:Dapperの、あまりの内蔵機能モジュール、サードパーティのモジュールに依存しているそれらのほとんどが、理由は分かりやすい鉛含有量を合理化

  竜巻:非同期非ブロッキング主に高IO多重化の場合に使用される治療は、一般的に使用される複数のゲームバックエンド

 

3つの部分に分かれ、機能のWebフレーム

A:ソケット(サービス)

B:ルーティングとビュー機能  

C:テンプレートのレンダリング

 

ジャンゴ:

  a:用别人的  wsgiref

  b:自己写的

  c:自己写的

Flask:

  a:用别人的  werkzeug

  b:自己写的

  c:用别人的  jinja2

Tornado:

  a,b,c 都是自己写的

 

注意,在运行Django的时候:

  1、计算机的名称不能有中文

  2、一个pycharm窗口就是一个项目,不要多个项目放在一个窗口里面

  3、项目名不能起中文

 

 Django简介

  一般下载1.xx.xx版本

   命令行下载:pip3 install Django == 1.11.11

  验证是否下载成功

  Django - admin

 

创建Django项目的方式

  方式一(命令行创建):

    创建Django项目

      Django-admin startproject  

    创建app应用

      Python3  manage.py  startapp  app01

    启动Django项目

      python3  manage.py  runserver

    注意:用命令行创建Django默认不会自动创建templates(用来存放所有的HTML文件的地方)文件夹

          需要自己手动创建(在settings中查看该文件夹是否加入了环境变量中,没有要记得手动添加)

 

   方式二(pycharm创建):

     file>new project 选择Django 注意:1、名字不能有中文   2、选择本地解释器  3、勾选后台管理

    创建app

      pycharm命令行创建

        python3  manage.py  startapp  app01

      Tools  下面 run manage task 功能栏  省略了python3  manage.py 直接输入startapp即可创建

     强调:

      1、用django 一定要保证只有一个在运行状态

      2、记得清理浏览器的缓存

 

app(应用)的概念

    一个django项目就像是一所大学

    而app就是大学里面的学院

注意:创建新的app之后,要在配置文件中注册才能生效

 INSTALLED_APPS = [

  'django.contrib.admin',
  'django.contrib.auth',
  'django.contrib.contenttypes',
  'django.contrib.sessions',
  'django.contrib.messages',
  'django.contrib.staticfiles',
  'app01.apps.App01Config'    # 可以用全称
  'app01'            # 也可以简写

 ]

 django各个文件的作用

 应用名

    migrations  数据库迁移记录相关数据

    admin.py     django 后台管理相关

    models.py      模型表相关

    views.py    视图函数相关

项目名

    settings.py   配置文件

    urls.py    路由与视图函数的映射关系

templates

    项目用到的所有HTML文件

 manage.py

    django 入口文件

 

 django 入门必会三个技术点

from  django.shortcuts  import render,HttpResponse,redirect

 

HttpResponse  返回字符串

render       返回一个html页面

    两种给前端页面传值的方式

      def reg(request):
        user_dict = {'name':'jason','password':'123'}
        return render(request,'reg.html',{'user_dict':user_dict})

      def reg(request):
        user_dict = {'name':'jason','password':'123'}
        return render(request,'reg.html',locals())    (推荐使用)

 redirect    重定向(跳转到其他指定URL或页面等)

 

django识别到代码变化之后会自动刷新,但是有时候反应速度比较慢

可以手动重启,也可以手动刷新浏览器

 

おすすめ

転載: www.cnblogs.com/SlookUp/p/10981231.html