【发布时间】:2021-05-30 10:58:10
【问题描述】:
我在
标记中为 custom.css 中的所有模板设置了默认字体系列“Sofia Sans”,但是当我在 Django Admin TinyMCE HTMLFiled() 中粘贴具有不同字体系列的文本时,它会覆盖默认字体。 无论复制的文本字体是什么,是否可以将 HTMLFiled() 的默认字体系列设置为“Sofia Sans”?【问题讨论】:
我在
标记中为 custom.css 中的所有模板设置了默认字体系列“Sofia Sans”,但是当我在 Django Admin TinyMCE HTMLFiled() 中粘贴具有不同字体系列的文本时,它会覆盖默认字体。 无论复制的文本字体是什么,是否可以将 HTMLFiled() 的默认字体系列设置为“Sofia Sans”?【问题讨论】:
使用 format_font() 函数创建 format.py 文件,该函数在调用时强制格式化所有 css 字体系列属性:
import re
def format_font(text, font='font-family: "Sofia Sans", sans-serif;'):
regex = '(?s)font-family:(.*?);'
pattern = re.compile(regex)
return re.sub(pattern, font, text)
比在视图中调用 format_font() 来格式化 HTMLField (general_page_obj.text) 的输出:
def general_page(request):
general_page_obj = GeneralPage.objects.get()
general_page_obj.text = format_font(general_page_obj.text)
return render(request, 'pages/general_page.html', {'general_page': general_page_obj}
【讨论】: