閱讀文本大概需要 5 分鐘。
成都創(chuàng)新互聯(lián)公司的客戶來(lái)自各行各業(yè),為了共同目標(biāo),我們?cè)诠ぷ魃厦芮信浜希瑥膭?chuàng)業(yè)型小企業(yè)到企事業(yè)單位,感謝他們對(duì)我們的要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來(lái)驚喜。專業(yè)領(lǐng)域包括網(wǎng)站設(shè)計(jì)制作、成都做網(wǎng)站、電商網(wǎng)站開發(fā)、微信營(yíng)銷、系統(tǒng)平臺(tái)開發(fā)。上次 2 篇文章給大家分享了 Django 搭建的基本知識(shí),今天就把 Django 基本知識(shí)串起來(lái),搭建一個(gè)簡(jiǎn)單的博客網(wǎng)站。
語(yǔ)言:Python 3.6
編輯器:Pycharm
創(chuàng)建項(xiàng)目
創(chuàng)建 APP
創(chuàng)建跳轉(zhuǎn)路由
定義博客模塊
同步數(shù)據(jù)庫(kù)
訪問Django后臺(tái)
配置后臺(tái)字段
修改頁(yè)面視圖
博客展示
Djagon 安裝和環(huán)境搭建前兩篇文章講得比較詳細(xì),本文不會(huì)細(xì)講,還沒上車的請(qǐng)點(diǎn)擊下方鏈接:
Python框架Django入門:環(huán)境及項(xiàng)目搭建
Python框架Django:頁(yè)面渲染和數(shù)據(jù)庫(kù)應(yīng)用
創(chuàng)建 Django 項(xiàng)目有三種方式,具體參考 Python框架Django入門:環(huán)境及項(xiàng)目搭建,常見的方式是在 cmd 中輸入以下命令創(chuàng)建,然后在 Pycharm 中打開此項(xiàng)目目錄。
django-admin startproject mysite
在 Pycharm 下方的 Terminal 終端窗口輸入下面命令創(chuàng)建一個(gè)名稱為「blog」的 APP。
python3 manage.py startapp blog
在 mysite/settings.py 中 INSTALLED_APPS 列表里新增 blog 應(yīng)用。
創(chuàng)建好后項(xiàng)目目錄結(jié)構(gòu)如下
在 mysite/urls.py 中定義兩個(gè)鏈接跳轉(zhuǎn)路由,一個(gè)是管理后臺(tái)的 admin,一個(gè)是查看博客的 blog。(左右滑動(dòng)查看全部代碼)
from django.contrib import admin
from django.urls import path
from blog import views
urlpatterns = [
path('admin/', admin.site.urls),
path('blog/', views.blog_index),
]
在 blog/models.py 中創(chuàng)建模塊,定義一個(gè) Blog 類,在類里面定義博客的標(biāo)題、內(nèi)容、創(chuàng)建時(shí)間。
from django.db import models
# Create your models here.
class Blog(models.Model):
title = models.CharField(max_length=150) # 博客標(biāo)題
body = models.TextField() # 博客內(nèi)容
timestamp =models.DateTimeField() # 博客創(chuàng)建時(shí)間
數(shù)據(jù)庫(kù)信息有修改的話我們需要通過(guò)以下兩個(gè)命令對(duì)它進(jìn)行同步。(左右滑動(dòng)查看全部代碼)
F:\djangopjt\mysite>python3 manage.py makemigrations blog
Migrations for 'blog':
blog\migrations\0001_initial.py
- Create model BlogPost
F:\djangopjt\mysite>python3 manage.py migrate
Operations to perform:
Apply all migrations: admin, auth, blog, contenttypes, sessions
Running migrations:
Applying blog.0001_initial... OK
之前分享的文章中 Python框架Django:頁(yè)面渲染和數(shù)據(jù)庫(kù)應(yīng)用 分享過(guò)如何創(chuàng)建 admin 后臺(tái)賬號(hào)和密碼,其實(shí)也很簡(jiǎn)單,一條命令即可創(chuàng)建。
F:\djangopjt\mysite>python3 manage.py createsuperuser
Username (leave blank to use 'guixianyang'): brucepk
Email address: brucepk@main.com
Password:
Password (again):
Superuser created successfully.
創(chuàng)建好超級(jí)管理員賬號(hào)和密碼后,啟動(dòng)服務(wù)后就可以登錄了。
為了方便在后臺(tái)對(duì)剛定義的三個(gè)字段進(jìn)行可視化修改,我們?cè)?blog/admin.py 中將剛才定義的三個(gè)字段放在列表中。(左右滑動(dòng)查看全部代碼)
from django.contrib import admin
from blog.models import Blog
# Register your models here.
class BlogsAdmin(admin.ModelAdmin):
list = ['title', 'body', 'timestamp']
admin.site.register(Blog, BlogsAdmin)
通過(guò) runserver 命令啟動(dòng)服務(wù)。
F:\djangopjt\mysite>python3 manage.py runserver
Performing system checks...
System check identified no issues (0 silenced).
November 01, 2018 - 11:12:07
Django version 2.1.1, using settings 'mysite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.
打開后臺(tái)地址 http://127.0.0.1:8000/admin/ 就可以自定義剛才的新增的三個(gè)字段了,輸入內(nèi)容后,點(diǎn)擊下方 SAVE 按鈕保存內(nèi)容。
1、我先在 blog 目錄里新建一個(gè) templates 文件夾,在此文件夾里新建 index.html 文件。為了讓頁(yè)面看起來(lái)炫酷些,我們可以去 Bootstrap 看看,Bootstrap 是一個(gè)前端開發(fā)框架,在官網(wǎng)可以找到相應(yīng)的前端框架實(shí)例 ,右鍵查看源碼,復(fù)制過(guò)來(lái)就好。我選擇了一個(gè)比較簡(jiǎn)單的模板,模板地址:https://v3.bootcss.com/examples/starter-template/ ,把源代碼復(fù)制過(guò)來(lái)放在 index.html 文件里。
2、在 blog/views.py 文件中定義方法去請(qǐng)求數(shù)據(jù)庫(kù)中的所有數(shù)據(jù)并放在 index.html 的樣式中。
from django.shortcuts import render
from blog.models import Blog
# Create your views here.
def blog_index(request):
blog_list = Blog.objects.all() # 獲取數(shù)據(jù)庫(kù)中所有數(shù)據(jù)
return render(request, 'index.html', {'blog_list': blog_list}) # 返回index.html頁(yè)面
最后通過(guò)命令啟動(dòng)服務(wù),打開 blog 網(wǎng)站,就可以看到我們自己定義的視圖和內(nèi)容了。
這樣,一個(gè)簡(jiǎn)易的博客模型就出來(lái)了,后面再根據(jù)自己的需求對(duì)博客進(jìn)行優(yōu)化,比如,博客內(nèi)容的格式優(yōu)化,增加博客評(píng)論系統(tǒng)等等。
名稱欄目:用Django框架快速搭建博客-創(chuàng)新互聯(lián)
地址分享:http://jinyejixie.com/article18/dpdogp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動(dòng)態(tài)網(wǎng)站、微信公眾號(hào)、建站公司、全網(wǎng)營(yíng)銷推廣、標(biāo)簽優(yōu)化、網(wǎng)站策劃
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)