欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Django搭建項目實戰(zhàn)與避坑細(xì)節(jié)詳解

 更新時間:2020年12月06日 11:02:22   作者:dongfanger  
這篇文章主要給大家介紹了關(guān)于Django搭建項目實戰(zhàn)與避坑細(xì)節(jié)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

Django 開發(fā)項目是很快的,有多快?看完本篇文章,你就知道了。

安裝 Django

前提條件:已安裝 Python。

Django 使用 pip 命令直接就可以安裝:

pip install django

如果安裝失敗,很可能是因為網(wǎng)絡(luò)連接超時了,試試國內(nèi)鏡像:

pip install --default-timeout=6000 -i https://pypi.tuna.tsinghua.edu.cn/simple django

這條命令同時延長了超時時間,提高成功率。

安裝完成后,通過 django-admin --version 這條命令驗證。

創(chuàng)建 project

按住 Windows 鍵 + R,輸入 cmd 回車,接著 cd 到任意目錄:

或者先打開目錄窗口,在地址欄輸入 cmd 回車,不需要 cd(推薦):

在命令行窗口輸入命令創(chuàng)建 project:

django-admin startproject mysite

目錄結(jié)構(gòu)如下(注意有 2 個 mysite 哦):

mysite/
 manage.py
 mysite/
  __init__.py
  settings.py
  urls.py
  asgi.py
  wsgi.py

創(chuàng)建 app

Django 項目由 1 個 project 和多個 app 組成。project 存放項目配置,app 是網(wǎng)站各個功能的具體實現(xiàn)。

app 的放置目錄沒有限制,這里先放在和 mysite 的同級目錄中,先進(jìn)入外層的 mysite 文件夾:

cd mysite

輸入命令創(chuàng)建:

django-admin startapp polls

目錄結(jié)構(gòu)如下:

mysite/
	polls/
  __init__.py
  admin.py
  apps.py
  migrations/
   __init__.py
  models.py
  tests.py
  views.py
 mysite/
 manage.py

使用 cmd 創(chuàng)建完 project 和 app 以后,就可以打開 PyCharm,再 Open mysite 項目了:

為了讓 app 和 project 關(guān)聯(lián)起來,需要在 mysite/settings.py 文件中添加配置:

INSTALLED_APPS = [
 'django.contrib.admin',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'polls.apps.PollsConfig', # 添加
]

在 polls/models.py 文件中添加數(shù)據(jù)模型:

from django.db import models


class Question(models.Model):
 question_text = models.CharField(max_length=200)
 pub_date = models.DateTimeField('date published')


class Choice(models.Model):
 question = models.ForeignKey(Question, on_delete=models.CASCADE)
 choice_text = models.CharField(max_length=200)
 votes = models.IntegerField(default=0)

連接 MySQL

前提條件:已安裝 MySQL,創(chuàng)建好數(shù)據(jù)庫。

Django 默認(rèn)使用輕量級數(shù)據(jù)庫 SQLite,我們切換為常用的 MySQL。

修改 mysite/settings.py 中的數(shù)據(jù)庫配置:

DATABASES = {
 'default': {
  'ENGINE': 'django.db.backends.mysql',
  'HOST': '主機(jī)',
  'PORT': 端口,
  'NAME': '數(shù)據(jù)庫名',
  'USER': '用戶名',
  'PASSWORD': '密碼'
 }
}

Django 默認(rèn)通過底層調(diào)用 mysqlclient 這個庫和 MySQL 交互。但是 mysqlclient 非常不好安裝!我們改用 pymysql。

先安裝:

pip install pymysql

然后在與 mysite/settings.py 文件同級的 __init__ 文件中添加:

import pymysql

pymysql.version_info = (1, 4, 0, "final", 0)
pymysql.install_as_MySQLdb()

數(shù)據(jù)遷移

數(shù)據(jù)遷移,指的是把代碼中的數(shù)據(jù)模型,遷移到數(shù)據(jù)庫中,創(chuàng)建相應(yīng)的表結(jié)構(gòu)。

第一步,告訴 Django 數(shù)據(jù)模型有更新:

python manage.py makemigrations polls

執(zhí)行后輸出:

Migrations for 'polls':
 polls/migrations/0001_initial.py
 - Create model Question
 - Create model Choice

第二步,執(zhí)行數(shù)據(jù)遷移同步:

python manage.py migrate

執(zhí)行后輸出:

Operations to perform:
 Apply all migrations: admin, auth, contenttypes, polls, sessions
Running migrations:
 Rendering model states... DONE
 Applying polls.0001_initial... OK

數(shù)據(jù)庫表就創(chuàng)建好了:

啟動項目

萬事俱備,只差 1 條啟動命令,在根目錄執(zhí)行:

python manage.py runserver

訪問 http://127.0.0.1:8000/,就可以看到來自 Django 老鐵的這發(fā)火箭了:

小結(jié)

本文是對《匆匆一眼》文章的補(bǔ)充。介紹了如何安裝 Django,創(chuàng)建 Django 的 project 和 app,連接 MySQL,執(zhí)行數(shù)據(jù)遷移,最后啟動項目的實際操作步驟。思路很清晰。整體流程清楚了,可這些文件都是干嘛的呢?

參考資料:

https://docs.djangoproject.com/en/3.1/intro/tutorial01/

到此這篇關(guān)于Django搭建項目實戰(zhàn)與避坑細(xì)節(jié)的文章就介紹到這了,更多相關(guān)Django搭建項目與避坑內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python異步編程之yield?from的用法詳解

    Python異步編程之yield?from的用法詳解

    yield?from?是Python3.3?后新加的語言結(jié)構(gòu),可用于簡化yield表達(dá)式的使用,這篇文章主要為大家詳細(xì)介紹了yield?from的用法,需要的可以了解一下
    2023-12-12
  • Python加載數(shù)據(jù)的5種不同方式(收藏)

    Python加載數(shù)據(jù)的5種不同方式(收藏)

    這篇文章主要介紹了Python加載數(shù)據(jù)的5種不同方式(收藏),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • Python單元測試框架unittest簡明使用實例

    Python單元測試框架unittest簡明使用實例

    這篇文章主要介紹了Python單元測試框架unittest簡明使用實例,本文講解了基本測試步驟、和測試實例,需要的朋友可以參考下
    2015-04-04
  • Pandas DataFrame數(shù)據(jù)的更改、插入新增的列和行的方法

    Pandas DataFrame數(shù)據(jù)的更改、插入新增的列和行的方法

    這篇文章主要介紹了Pandas DataFrame數(shù)據(jù)的更改、插入新增的列和行的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • Python爬蟲實現(xiàn)爬取百度百科詞條功能實例

    Python爬蟲實現(xiàn)爬取百度百科詞條功能實例

    這篇文章主要介紹了Python爬蟲實現(xiàn)爬取百度百科詞條功能,結(jié)合完整實例形式分析了Python爬蟲的基本原理及爬取百度百科詞條的步驟、網(wǎng)頁下載、解析、數(shù)據(jù)輸出等相關(guān)操作技巧,需要的朋友可以參考下
    2019-04-04
  • pytorch中Parameter函數(shù)用法示例

    pytorch中Parameter函數(shù)用法示例

    這篇文章主要為大家介紹了pytorch中Parameter函數(shù)用法,并用詳細(xì)的代碼示例進(jìn)行演示詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2022-01-01
  • Python裝飾器詳細(xì)介紹

    Python裝飾器詳細(xì)介紹

    這篇文章主要介紹了Python @property裝飾器的用法,在Python中,可以通過@property裝飾器將一個方法轉(zhuǎn)換為屬性,從而實現(xiàn)用于計算的屬性,下面文章圍繞主題展開更多相關(guān)詳情,感興趣的小伙伴可以參考一下
    2022-12-12
  • Django自定義過濾器定義與用法示例

    Django自定義過濾器定義與用法示例

    這篇文章主要介紹了Django自定義過濾器定義與用法,結(jié)合實例形式分析了Django自定義過濾器的概念、功能、定義及使用方法,需要的朋友可以參考下
    2018-03-03
  • Pytorch如何打印與Keras的model.summary()類似的輸出(最新推薦)

    Pytorch如何打印與Keras的model.summary()類似的輸出(最新推薦)

    這篇文章主要介紹了Pytorch如何打印與Keras的model.summary()類似的輸出,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-07-07
  • Pytorch?Mac?GPU?訓(xùn)練與測評實例

    Pytorch?Mac?GPU?訓(xùn)練與測評實例

    這篇文章主要為大家介紹了Pytorch?Mac?GPU?訓(xùn)練與測評實例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01

最新評論