精品久久久久久久久久久院品网_男女男精品视频_日韩**一区毛片_在线免费不卡电影_亚洲少妇屁股交4_久久国内精品视频_日韩一区二区三免费高清_亚洲成人手机在线_91看片淫黄大片一级在线观看_中文字幕亚洲在_日本一区二区在线不卡_欧美酷刑日本凌虐凌虐_理论电影国产精品_国产精品视频yy9299一区_99久久精品免费观看_国产精品久久三

您現在所在的位置:首頁 >學習資源 > Python全棧+人工智能入門教材 > Python基礎入門教程68:Django 項目和應用程序

Python基礎入門教程68:Django 項目和應用程序

來源:奇酷教育 發表于:

要啟動 Django 項,請使用 django-adminstartproject命令,如下所示:清單 3 啟動項目1~ dev$ django-admin py startproject djpr

要啟動 Django 項,請使用 django-admin startproject 命令,如下所示:
清單 3. 啟動項目
1
~/dev$ django-admin.py startproject djproject

上面這個命令會創建一個 djproject 目錄,其中包含了運行 Django 項目所需要的基本配置文件:

清單 4. djproject 目錄的內容
1
2
3
4
__init__.py
manage.py
settings.py
urls.py

對于這個項目來說,我們要構建一個職位公告板應用程序 “jobs”。要創建應用程序,可以使用 manage.py 腳本,這是一個特定于項目的 django-admin.py 腳本,其中 settings.py 文件可以自動提供:

清單 5. 使用 manage.py startapp
1
2
~/dev$ cd djproject
~/dev/djproject$ python manage.py startapp jobs

這將創建一個應用程序骨架,其中模型有一個 Python 模塊,視圖有另外一個 Python 模塊。jobs 目錄中包含以下文件:

清單 6. jobs 應用程序目錄中的內容
1
2
3
__init__.py
models.py
views.py

提供應用程序在項目中的位置純粹是為新 Django 開發人員建立的一種慣例,并不是必需的。一旦開始在幾個項目中混合使用應用程序,就可以將應用程序放到自己的命名空間中,并使用設置和主 URL 文件將它們綁定在一起。現在,請按照下面給出的步驟執行操作。

為了使 Django 認識到新應用程序的存在,還需要向 settings.py 文件中的 INSTALLED_APPS 添加一個條目。對于這個職位公告板應用程序來說,我們必須添加字符串 djproject.jobs

清單 7. 向 settings.py 中添加一個條目
1
2
3
4
5
6
7
INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'djproject.jobs',
)

創建一個模型

Django 提供了自己的對象關系型數據映射組件(object-relational mapper,ORM)庫,它可以通過 Python 對象接口支持動態數據庫訪問。這個 Python 接口非常有用,功能十分強大,但如果需要,也可以靈活地不使用這個接口,而是直接使用 SQL。

ORM 目前提供了對 PostgreSQL、MySQL、SQLite 和 Microsoft® SQL 數據庫的支持。

這個例子使用 SQLite 作為后臺數據庫。SQLite 是一個輕量級數據庫,它不需要進行任何配置,自身能夠以一個簡單文件的形式存在于磁盤上。要使用 SQLite,可以簡單地使用 setuptools 來安裝 pysqlite(有關 setuptools 的更多資料,尤其是有關 easy_install 工具(需要單獨安裝)的資料,請參閱 參考資料):

easy_install pysqlite

在使用這個模型之前,需要在設置文件中對數據庫進行配置。SQLite 只需要指定數據庫引擎和數據庫名即可。

清單 8. 在 settings.py 中配置數據庫
1
2
3
4
5
6
DATABASE_ENGINE = 'sqlite3'
DATABASE_NAME = '/path/to/dev/djproject/database.db'
DATABASE_USER = ''
DATABASE_PASSWORD = ''
DATABASE_HOST = ''
DATABASE_PORT = ''

這個職位公告板應用程序有兩種類型的對象:Location 和 Job。Location 包含 city、state(可選)和 country 字段。Job 包含 location、title、description 和 publish date 字段。

清單 9. jobs/models.py 模塊
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
from django.db import models
 
class Location(models.Model):
    city = models.CharField(maxlength=50)
    state = models.CharField(maxlength=50, null=True, blank=True)
    country = models.CharField(maxlength=50)
 
    def __str__(self):
        if self.state:
            return "%s, %s, %s" % (self.city, self.state, self.country)
        else:
            return "%s, %s" % (self.city, self.country)
 
class Job(models.Model):
    pub_date = models.DateField()
    job_title = models.CharField(maxlength=50)
    job_description = models.TextField()
    location = models.ForeignKey(Location)
 
    def __str__(self):
        return "%s (%s)" % (self.job_title, self.location)

__str__ 方法是 Python 中的一個特殊類,它返回對象的字符串表示。Django 在 Admin 工具中顯示對象時廣泛地使用了這個方法。

要設置這個模型的模式,請返回 manage.py 的 sql 命令。此時模式尚未確定。

清單 10. 使用 manage.py sql 命令查看數據庫模式
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
~/dev/djproject$ python manage.py sql jobs
 
BEGIN;
CREATE TABLE "jobs_job" (
    "id" integer NOT NULL PRIMARY KEY,
    "pub_date" date NOT NULL,
    "job_title" varchar(50) NOT NULL,
    "job_description" text NOT NULL,
    "location_id" integer NOT NULL
);
CREATE TABLE "jobs_location" (
    "id" integer NOT NULL PRIMARY KEY,
    "city" varchar(50) NOT NULL,
    "state" varchar(50) NULL,
    "country" varchar(50) NOT NULL
);
COMMIT;

為了初始化并安裝這個模型,請運行數據庫命令 syncdb

~/dev/djproject$ python manage.py syncdb

注意,syncdb 命令要求我們創建一個超級用戶帳號。這是因為 django.contrib.auth 應用程序(提供基本的用戶身份驗證功能)默認情況下是在 INSTALLED_APPS 設置中提供的。超級用戶名和密碼用來登錄將在下一節介紹的管理工具。記住,這是 Django 的超級用戶,而不是系統的超級用戶。

精品久久久久久久久久久院品网_男女男精品视频_日韩**一区毛片_在线免费不卡电影_亚洲少妇屁股交4_久久国内精品视频_日韩一区二区三免费高清_亚洲成人手机在线_91看片淫黄大片一级在线观看_中文字幕亚洲在_日本一区二区在线不卡_欧美酷刑日本凌虐凌虐_理论电影国产精品_国产精品视频yy9299一区_99久久精品免费观看_国产精品久久三
欧美亚洲国产一区在线观看网站| 国产精品一区二区欧美| 亚洲日本成人在线观看| 亚洲视频在线一区二区| 亚洲精品国产一区二区精华液| 亚洲精选在线视频| 午夜av一区二区三区| 激情亚洲综合在线| 3d动漫啪啪精品一区二区免费| 精品国产免费一区二区三区 | 国产精品资源在线看| 丁香亚洲综合激情啪啪综合| 18成人在线| 日本午夜一区二区三区| 欧美色窝79yyyycom| 亚洲国产精品成人久久综合一区| 亚洲国产另类av| 粉嫩av一区二区三区| 精品国产免费久久久久久尖叫 | 免费在线观看成人| 99久久久久久| 一本色道久久综合亚洲精品婷婷 | ㊣最新国产の精品bt伙计久久| 午夜精品一区在线观看| 波波电影院一区二区三区| 久久涩涩网站| 3atv在线一区二区三区| 综合激情成人伊人| 国产精品影视天天线| 精品欧美一区二区久久久伦| 欧美日韩国产小视频| 亚洲女人****多毛耸耸8| 狠狠久久亚洲欧美| 久久伊人一区| 精品人伦一区二区色婷婷| 亚洲精品水蜜桃| 成人黄色一级视频| 色婷婷香蕉在线一区二区| 国产精品网站一区| 国产老妇另类xxxxx| 色一情一乱一伦一区二区三区 | 欧美性xxxxxxxx| 国产精品久久久久久久第一福利 | 婷婷四房综合激情五月| 亚洲精品一区在线观看| 免费视频最近日韩| 久久一区二区三区av| 精品久久久久久久一区二区蜜臀| 视频一区在线播放| 国产伦精品一区二区三区照片91 | 欧美日韩在线一区二区| 亚洲色图欧美偷拍| 成人av网站免费观看| 色婷婷av一区二区三区gif| 亚洲视频网在线直播| aaa欧美大片| 欧美剧情电影在线观看完整版免费励志电影 | 奇米777欧美一区二区| 精品久久蜜桃| 久久蜜桃av一区精品变态类天堂| 国内成+人亚洲+欧美+综合在线| 欧美日韩一区综合| 日本一区二区三区四区| 91视频国产观看| 欧美www视频| 国产a区久久久| 欧美精品在欧美一区二区少妇| 图片区日韩欧美亚洲| 视频一区二区三区免费观看| 亚洲婷婷国产精品电影人久久| 91精品久久香蕉国产线看观看| 日韩欧美在线网站| 国产成人午夜高潮毛片| 欧美嫩在线观看| 韩日精品视频一区| 欧美人体做爰大胆视频| 麻豆精品一区二区三区| 色视频成人在线观看免| 日本不卡一二三区黄网| 在线视频一区二区三区| 免费人成网站在线观看欧美高清| 色综合天天综合在线视频| 三级一区在线视频先锋| 亚洲一区二区四区| 日本成人在线网站| 欧美视频自拍偷拍| 韩国三级在线一区| 欧美精品自拍偷拍| 国产精品99久久不卡二区| 欧美美女bb生活片| 国产高清精品久久久久| 日韩精品一区国产麻豆| 91丨九色丨蝌蚪丨老版| 国产欧美精品区一区二区三区| y111111国产精品久久婷婷| 国产精品色在线观看| 欧美极品日韩| 天天综合色天天综合色h| 欧美曰成人黄网| 国产成人av电影| 久久精品一区蜜桃臀影院| 国产自产精品| 无码av免费一区二区三区试看 | 中文字幕中文字幕一区二区| 国产精品嫩草在线观看| 一区二区三区成人| 在线观看av一区| 成人综合在线观看| 久久精品欧美一区二区三区不卡 | 亚洲国产精品久久久久婷婷884 | 午夜一区二区三区| 卡一卡二国产精品| 精品国产区一区| 久久99精品久久久水蜜桃| 亚洲第一二三四区| 欧美日韩国产电影| 96成人在线视频| 亚洲国产一区二区视频| 欧美日韩aaa| 91传媒视频免费| 亚洲国产精品精华液网站| 欧美视频一二三区| 99re视频在线播放| 五月婷婷另类国产| 欧美电影免费提供在线观看| 国产偷久久久精品专区| 三级在线观看一区二区| 欧美成va人片在线观看| 国产精品一区二区三区在线| 天天色天天爱天天射综合| 欧美一二三区精品| 久久精品国产第一区二区三区最新章节| 亚洲国产日产av| 精品久久久久久无| 日本在线观看一区| 国产成人午夜精品影院观看视频| 国产精品传媒入口麻豆| 欧美日韩一区二区三区免费看| 99久久精品无码一区二区毛片| 亚洲午夜久久久久久久久电影网| 在线成人av网站| 欧美亚州在线观看| 国产.欧美.日韩| 亚洲国产日韩av| 久久男人中文字幕资源站| 亚洲精品一品区二品区三品区| 国产成人综合网| 亚洲国产人成综合网站| 精品剧情v国产在线观看在线| 欧美日韩一区在线视频| 国产成人免费视频网站| 亚洲成人av资源| 久久久99久久| 欧美日韩国产一区| 欧美深深色噜噜狠狠yyy| 成人一二三区视频| 婷婷成人综合网| 国产免费观看久久| 日韩一区二区三区精品视频| 亚洲精品人成| 国产欧美在线一区二区| 国产成人精品免费看| 三级一区在线视频先锋| 亚洲丝袜自拍清纯另类| 精品国产一区二区精华| 色偷偷88欧美精品久久久| 精品久久久久久中文字幕动漫| 成人精品视频.| 久久99在线观看| 亚洲一区自拍偷拍| 欧美国产在线观看| 日韩欧美成人一区二区| 欧美少妇性性性| 亚洲精品在线视频观看| 精品国产一区二区三区免费| jvid福利写真一区二区三区| 精品一区二区av| 午夜欧美在线一二页| 一区二区三区四区五区视频在线观看 | 成人免费黄色在线| 久久精品国产99国产精品| 亚洲一区二区三区自拍| 综合久久久久综合| 久久精品亚洲一区二区三区浴池| 91精品国产综合久久久久久漫画| 亚洲一区二区三区精品动漫| 久久久婷婷一区二区三区不卡| 91观看网站| 91手机在线观看| 99精品国产一区二区三区不卡| 国产精品一区二区在线播放| 麻豆视频观看网址久久| 天天色天天操综合| 午夜电影网亚洲视频| 亚洲国产日韩精品| 一区二区三区在线视频免费观看 | 紧缚捆绑精品一区二区| 人人精品人人爱| 日韩av中文字幕一区二区| 偷拍日韩校园综合在线|