国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Django2.2圖文教程

roundstones / 2784人閱讀

摘要:事實上,社區成員給了他一個榮譽稱號終生仁慈獨裁者。說明圖片來源百度。安裝終端下或是在里面,命令相同。同步數據庫在終端中執行此命令執行完成后,會在下生產記錄變動的記錄。此時數據庫并未變動,然后執行這樣的變動,立即同步到數據庫中。

原文鏈接

1.準備工作

開發環境:
python: 3.7.3 下載地址:https://www.python.org/downlo...
pip: pip3
Django: 2.2 下載地址: https://www.djangoproject.com...
PyCharm: 2017.2 下載地址:https://www.jetbrains.com/pyc...

2.基礎知識

1.Python: Python發源于八十年代后期。開發者是Centrum Wiskunde & Informatica的Guido van Rossum,這是位于荷蘭阿姆斯特丹科學園區的一個數學和計算機科學研究中心。之后Van Rossum一直是Python開發很有影響的人物。事實上,社區成員給了他一個榮譽稱號:終生仁慈獨裁者(BDFL)。

2.web框架介紹
web框架的概念就像建房子,地基、支撐柱、大梁的骨架還有其他沙石、地板等等材料已經有了,
剩下的就是靠你自己組裝起來。猶如積木一樣。

說明:圖片來源百度。

Django: Python代表性web框架,
遵循MMVC架構模式的開源框架。
它的名字來自Django Reinhardt,一個法國作曲家和吉他演奏家,很多人認為他是歷史上最偉大的吉他演奏家。位于堪薩斯洲的Lawrence城的Lawrence Journal-World報社有兩位程序員,Adrian Holovaty和Simon Willison,他們在2003的時候開發出了Django,用于給報紙開發web程序。

其他框架:tornado、flask、webpy

3.實例

Python的和Pycharm的安裝忽略,安裝比較簡單。

1.安裝

Mac終端下:

$ pip3 install django # 或 pip3 install django==2.2

Windows是在cmd里面,命令相同。

2.創建項目

打開Pycharm,歡迎頁create project,然后

然后點擊create就可以了。

PS:創建項目也可以使用命令這里不做介紹.

django-admin createproject DjangoQuick
django-admin startapp quick
3.項目結構

4.啟動項目

Pycharm菜單欄

直接點擊運行。或者左下角Terminal輸入python3 manage.py runserver

將會在瀏覽器看到

這樣表示項目已經啟動成功,但是我們沒有編寫任何代碼,所以出現了默認的錯誤提示。

5.添加視圖

打開quick目錄下的views.py,輸入一下內容

from django.shortcuts import render
from django.http import HttpResponse # 新添加
# Create your views here.

# 新添加
def index(request):
    return HttpResponse("success")

6.添加url

打開DjangoQuick下的urls.py,修改如下:

from django.contrib import admin
from django.urls import path

from quick.views import index # 導入包

urlpatterns = [
    path("admin/", admin.site.urls),
    path("", index) # 添加新的映射關系
]

如果使用Pycharm的按鈕啟動項目,需要點擊stop,重新運行,如果在terminal中運行項目,會自動重啟。
然后刷新瀏覽器。

然后就會看到我們在views.py的index方法中的輸出。

7.返回Html(模版)

在quick目錄新建templates目錄

然后右鍵-new-html file, 新建一個index.html文件

index.html




    
    Title


這是一個html from:https://litets.com

修改views.py文件

from django.shortcuts import render


def index(request):
    return render(request, "index.html")

重啟服務器,刷新瀏覽器將會看到

這是一個html from:https://litets.com
8.靜態文件

上面我們已經成功輸出了一段html代碼,并且成功展示。大家都知html的美化需要依靠css,
css寫法有兩種:內聯式和外聯式。內聯就不用多說,直接寫在html同文件里面就可以了,現在我們使用外聯文件改怎么辦呢?

在quick目錄下新建static/css/style.css文件。

.desc {
    color: red;
}


然后修改index.html


{% load static %}


    
    Title

    



    
這是一個html from:https://litets.com

刷新瀏覽器,將會看到字變成紅色了。

9.接收用戶數據,處理后返回

修改index.html文件

這是一個html from:https://litets.com
{% csrf_token %} 用戶名:
密碼:
{% if users %} {% for user in users %} {% endfor %}
序號 用戶名 密碼
{{ forloop.counter }} {{ user.username }} {{ user.password }}
{% endif %}

views.py修改

from django.shortcuts import render


def index(request):
    # 判斷是否是post請求
    if request.method == "POST":
        # 獲取到請求參數, username的寫法,如果username不存在不會拋異常
        # password 會拋異常
        username = request.POST.get("username")
        password = request.POST["password"]

        # 業務 需求:
        users = []
        for x in range(0,3):
            users.append(
                {"username": "%s-%d" % (username, x), "password": "%s-%d" % (password, x)}
            )

        # 返回給用戶  模版中使用到的users就是這里傳遞進去的
        return render(request, template_name="index.html", context={
            "users": users
        })
    return render(request, "index.html")

這樣我們就實現了一個基本的網站了,但是有一個問題,用戶傳遞過來的數據只是單次有效,無法持久化。
通常一個網站應用到需要持久化數據,比如文件、數據庫等。

10.數據庫持久化數據

我們打開DjangoQuick目錄下的setting.py找到DATEBASES
默認項目使用sqlite3最為數據庫。還支持 MySQL, PostgreSQL等

可用的引擎有:

"django.db.backends.sqlite3"
"django.db.backends.postgresql"
"django.db.backends.mysql"
"django.db.backends.oracle"

Mysql的設置:

DATABASES = {
    "default": {
        "ENGINE": "django.db.backends.mysql",
        "NAME": "test", # 數據庫名稱,
        "HOST": "localhost", # 主機地址
        "USER": "user", # 數據庫用戶
        "PASSWORD": "pwd", # 密碼
        "PORT": 3306 # mysql的端口默認3306
    }
}

這里我們使用默認的sqlite3。

打開quick下的models.py

from django.db import models

class User(models.Model):
    
    username = models.CharField(max_length=25)
    password = models.CharField(max_length=18)

我們增加了兩個字段username和password,Django默認支持orm。
同步數據庫,在終端中執行

$ python3 manage.py makemigrations


此命令執行完成后,會在migrations下生產記錄models變動的記錄。

此時數據庫并未變動,然后執行

$ python3 manage.py migrate

這樣models的變動,立即同步到數據庫中。

修改views.py

from django.shortcuts import render

from .models import User

def index(request):
    # 判斷是否是post請求
    if request.method == "POST":
        # 獲取到請求參數, username的寫法,如果username不存在不會拋異常
        # password 會拋異常
        username = request.POST.get("username")
        password = request.POST["password"]
        
        u = User(username=username, password=password)
        u.save()

    # 業務 需求:查詢出所有數據
    users = User.objects.all()
    
    # 返回給用戶
    return render(request, template_name="index.html", context={
        "users": users
    })

這樣添加用戶后就會持久報錯了,即使關閉瀏覽器,重新訪問數據也是存在的。

我們查看db.sqlite3文件查看里面的數據

原文鏈接

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/43613.html

相關文章

  • Godaddy域名續費貴!Godaddy域名轉移遷出到Namesilo域名服務商圖文教程

    摘要:慢慢要把域名域名轉走了。阿里云證書有免費申請的途徑嗎阿里云網站的導航欄產品安域名解析教程域名解析的圖文教程域名解析教程域名解析的圖文教程是國外域名注冊商,是一家認可的域名注冊和網站托管公司,近年來域名godaddy域名續費貴怎么辦?godaddy真是坑爹,安全性不高,價格也越來越貴。以前的COM域名優惠碼全部失效,好不容易找到一個優惠碼,也比原來的要貴,比國內的還是貴了,真是坑爹。慢慢要把g...

    番茄西紅柿 評論0 收藏2637
  • 阿里云服務器購買流程詳細2019更新(圖文教程

    摘要:四服務器使用教程購買完成后如何使用可以參考官方文檔阿里云服務器使用教程匯總云服務器使用也十分簡單,以搭建網站為例,無非是配置環境自定義安全組等操作,參考官方文檔即可,從等都有,最后感謝大家對云吞鋪子的關注。阿里云服務器購買頁面云吞鋪子認為過于復雜,尤其是對于第一次購買云服務器的新手來講,2019年了,思來想去云吞鋪子決定寫一篇服務器購買流程的圖文教程: 阿里云服務器購買流程 如何購買ECS云...

    lingdududu 評論0 收藏0
  • 超詳細Dkhadoop虛擬機安裝圖文教程

    摘要:超詳細虛擬機安裝圖文教程前兩天看到有人留言問在什么情況下需要部署,我給的回答也很簡單,就是在需要處理海量數據的時候才需要考慮部署。圖圖為虛擬機命名,如下圖,命名按照自己喜歡即可,點擊下一步進行處理器配置。 超詳細Dkhadoop虛擬機安裝圖文教程前兩天看到有人留言問在什么情況下需要部署hadoop,我給的回答也很簡單,就是在需要處理海量數據的時候才需要考慮部署hadoop。關于這個問題...

    ChanceWong 評論0 收藏0
  • 寶塔Linux面板免費Nginx防火墻安裝使用詳細圖文教程

    摘要:所以,本文中分享關于寶塔面板免費防火墻安裝使用的圖文教程。在你寶塔面板軟件商店第三方應用免費防火墻,點擊立即購買不用花錢,再點擊安裝,確定安裝。注意免費防火墻,和現有的的防火墻只能安裝一個,支持系統烏班圖。寶塔Linux面板免費nginx防火墻怎么樣?寶塔面板nginx免費防火墻是寶塔服務器面板為用戶提供的免費使用的網站防火墻,僅限于Nginx web服務器使用。 ? 眾所周知,國內...

    GHOST_349178 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<