溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

用Django框架快速搭建博客

發(fā)布時間:2020-08-11 11:37:20 來源:ITPUB博客 閱讀:144 作者:brucepk 欄目:編程語言

閱讀文本大概需要 5 分鐘。

上次 2 篇文章給大家分享了 Django 搭建的基本知識,今天就把 Django 基本知識串起來,搭建一個簡單的博客網(wǎng)站。

項目環(huán)境

語言:Python 3.6

編輯器:Pycharm

主要步驟
  • 創(chuàng)建項目

  • 創(chuàng)建 APP

  • 創(chuàng)建跳轉路由

  • 定義博客模塊

  • 同步數(shù)據(jù)庫

  • 訪問Django后臺

  • 配置后臺字段

  • 修改頁面視圖

  • 博客展示

Djagon 安裝和環(huán)境搭建前兩篇文章講得比較詳細,本文不會細講,還沒上車的請點擊下方鏈接:

Python框架Django入門:環(huán)境及項目搭建

Python框架Django:頁面渲染和數(shù)據(jù)庫應用

創(chuàng)建項目

創(chuàng)建 Django 項目有三種方式,具體參考 Python框架Django入門:環(huán)境及項目搭建,常見的方式是在 cmd 中輸入以下命令創(chuàng)建,然后在 Pycharm 中打開此項目目錄。

django-admin startproject mysite
創(chuàng)建 APP

在 Pycharm 下方的 Terminal 終端窗口輸入下面命令創(chuàng)建一個名稱為「blog」的 APP。

python3 manage.py startapp blog

在 mysite/settings.py 中 INSTALLED_APPS 列表里新增 blog 應用。

用Django框架快速搭建博客

創(chuàng)建好后項目目錄結構如下

用Django框架快速搭建博客

創(chuàng)建跳轉路由

在 mysite/urls.py 中定義兩個鏈接跳轉路由,一個是管理后臺的 admin,一個是查看博客的 blog。(左右滑動查看全部代碼)

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)建模塊,定義一個 Blog 類,在類里面定義博客的標題、內容、創(chuàng)建時間。

from django.db import models

# Create your models here.


class Blog(models.Model):
    title = models.CharField(max_length=150)    # 博客標題
    body = models.TextField()                   # 博客內容
    timestamp =models.DateTimeField()           # 博客創(chuàng)建時間
同步數(shù)據(jù)庫

數(shù)據(jù)庫信息有修改的話我們需要通過以下兩個命令對它進行同步。(左右滑動查看全部代碼)

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
訪問Django后臺

之前分享的文章中 Python框架Django:頁面渲染和數(shù)據(jù)庫應用 分享過如何創(chuàng)建 admin 后臺賬號和密碼,其實也很簡單,一條命令即可創(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)建好超級管理員賬號和密碼后,啟動服務后就可以登錄了。

配置后臺字段

為了方便在后臺對剛定義的三個字段進行可視化修改,我們在 blog/admin.py 中將剛才定義的三個字段放在列表中。(左右滑動查看全部代碼)

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)

通過 runserver 命令啟動服務。

F:\djangopjt\mysite>python3 manage.py runserver
Performing system checks...

System check identified no issues (0 silenced).
November 012018 - 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.

打開后臺地址 http://127.0.0.1:8000/admin/ 就可以自定義剛才的新增的三個字段了,輸入內容后,點擊下方 SAVE 按鈕保存內容。

用Django框架快速搭建博客

修改頁面視圖

1、我先在 blog 目錄里新建一個 templates 文件夾,在此文件夾里新建 index.html 文件。為了讓頁面看起來炫酷些,我們可以去 Bootstrap 看看,Bootstrap 是一個前端開發(fā)框架,在官網(wǎng)可以找到相應的前端框架實例 ,右鍵查看源碼,復制過來就好。我選擇了一個比較簡單的模板,模板地址:https://v3.bootcss.com/examples/starter-template/ ,把源代碼復制過來放在 index.html 文件里。

用Django框架快速搭建博客


用Django框架快速搭建博客

2、在 blog/views.py 文件中定義方法去請求數(shù)據(jù)庫中的所有數(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ù)庫中所有數(shù)據(jù)
    return render(request, 'index.html', {'blog_list': blog_list})   # 返回index.html頁面
博客展示

最后通過命令啟動服務,打開 blog 網(wǎng)站,就可以看到我們自己定義的視圖和內容了。

用Django框架快速搭建博客

這樣,一個簡易的博客模型就出來了,后面再根據(jù)自己的需求對博客進行優(yōu)化,比如,博客內容的格式優(yōu)化,增加博客評論系統(tǒng)等等。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI