Из учебника, на который вы ссылались выше:
tools.staticdir.root
- это «корневой каталог всего нашего статического контента» tools.staticdir.dir
is «все URL-адреса [...] начинается с / static и будет служить статическим контентом [...] прямым потомком корневого каталога. "
Это означает, что каталог root
должен быть каталогом, в котором находится весь ваш контент (HTML, CSS, изображения, шрифты ...) находится.Не корневая установка Python.
А статический dir
- это просто подкаталог в корневом каталоге.Его можно назвать как угодно.CherryPy сопоставляет путь /static
, используемый в качестве ключа в словаре конфигурации, с реальным именем в корневом каталоге.
Пример:
conf = {
'/': {
'tools.sessions.on': True,
'tools.staticdir.root': 'C:/users/chad/tutorials/7'
},
'/static': {
'tools.staticdir.on': True,
'tools.staticdir.dir': 'public-content'
}
}
Затем в этом примере вы должны создать C:/users/chad/tutorials/7
в качестве корневого каталога для всего статического содержимого с подпапкой с именем public-content
и внутри нее любой папки, в которую вы помещаете свои стили, и любого другого общедоступного содержимого.
Для таблицы стилей:вы можете иметь подпапку css
в (C:/users/chad/tutorials/7/public-content/css
) и поместить вашу style.css
внутрь.Вы будете ссылаться на него с помощью:
<link href="/static/css/style.css" rel="stylesheet">
======= ###
Путь static
(отмеченный =
) в URL-адресе происходит от /static
, используемого в качестве ключа в файле конфигурации.Путь css
(отмеченный #
) исходит из папки внутри C:/users/chad/tutorials/7/static-content
.
Обратите внимание, что настоящее имя статической папки public-content
не отображается в URL-адресах.
Применяя эти правила, вы можете иметь любую желаемую структуру каталогов.Например, если вы хотите изображения в C:/users/chad/tutorials/7/public-content/images
, вы будете ссылаться на них следующим образом:
<img src="/static/images/logo.png">
====== ######