django項目中設置網頁文段按markdown顯示

爲項目添加markdown效果

在django搭建個人博客中,如果想文章按照markdown的規則顯示,可以對項目添加以下代碼:

一. 爲文章後臺編輯添加markdown效果:

  1. 安裝mdeditor pip3 install mdeditor
  2. 在需要的模型的字段使用
from mdeditor.fields import MDTextField
content = MDTextField(verbose_name='文章內容')
  1. 在項目urls.py文件爲mdeditor添加路由
urlpatterns = [
		path('mdeditor/', include('mdeditor.urls')),  # mdeditor路由
]

設置完畢後,該字段在後臺的編輯畫面就變成了markdown樣式的了:
在這裏插入圖片描述
但是在實際瀏覽器中顯示時,代碼部分還是黑白的:
在這裏插入圖片描述
所以還要對代碼字段進行處理。

二、安裝markdown對代碼文段進行分詞處理

  1. 安裝markdownpip3 install markdown
  2. 在視圖裏對含有代碼的字段進行處理(只要將需要處理的字段放進下面的函數中,就可以自動對代碼進行分詞):
from markdown import markdown
def markdown_deal(message):
	# message是需要處理的字段
    message = markdown(message,
                       extensions=[
                           # 包含縮寫、表格等常用擴展
                           'markdown.extensions.extra',
                           # 語法高亮擴展
                           'markdown.extensions.codehilite',
                           # 允許我們自動生成目錄
                           'markdown.extensions.toc',
                       ])
     return message
  1. 安裝Pygmentspip3 install Pygment,該模塊可以生成針對markdown格式的代碼的css文件。安裝完成後跳轉到項目的css文件下,執行pygmentize -f html -a .highlight -S default > highlight.css
-- a .highlight		指所有css選擇器都具有.highlight這一祖先選擇器
-- S default		指定所需要的樣式(後面將展出所有內置樣式)
-- pygments.css		將內容寫出到pygments.css文件中
  1. 然後在對應的模板文件中引入該css文件:<link rel="stylesheet" href="{% static 'md_css/manni.css' %}">

到此爲之網頁應該就可以顯示高亮的代碼了:
在這裏插入圖片描述

三、最後列出Pygments內置的樣式截圖:

  1. pygmentize -f html -a .highlight -S emacs > highlight.css
    在這裏插入圖片描述

  2. friendly
    在這裏插入圖片描述

  3. colorful
    在這裏插入圖片描述

  4. autumn
    在這裏插入圖片描述

  5. murphy
    在這裏插入圖片描述

  6. manni
    在這裏插入圖片描述

  7. monokai
    在這裏插入圖片描述

  8. perldoc
    在這裏插入圖片描述

  9. pastie
    在這裏插入圖片描述

  10. borland
    在這裏插入圖片描述

  11. trac
    在這裏插入圖片描述

  12. native
    在這裏插入圖片描述

  13. fruity
    在這裏插入圖片描述

  14. bw
    在這裏插入圖片描述

  15. vim
    在這裏插入圖片描述

  16. vs
    在這裏插入圖片描述

  17. tango
    在這裏插入圖片描述

  18. rrt
    在這裏插入圖片描述

  19. xcode
    在這裏插入圖片描述

  20. igor
    在這裏插入圖片描述

  21. paraiso-light
    在這裏插入圖片描述

  22. paraiso-dark
    在這裏插入圖片描述

  23. lovelace
    在這裏插入圖片描述

  24. algol
    在這裏插入圖片描述

  25. algol_nu
    在這裏插入圖片描述

  26. arduino
    在這裏插入圖片描述

  27. rainbow_dash
    在這裏插入圖片描述

  28. abap
    在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章