Pelican - 并非所有参数都在字符串格式化期间转换
Pelican - not all arguments converted during string formatting
首先用 pelican 创建一个简单的静态页面。一切正常,直到我将主题更改为 basic theme
。在本地 运行 没问题,但我尝试执行 make github
或 make publish
我收到此错误:
CRITICAL: TypeError: not all arguments converted during string formatting
Makefile:75: recipe for target 'publish' failed
make: *** [publish] Error 1
我按照文档中的说明安装了主题,但它不起作用。
下面是我的 pelicanconf.py
#!/usr/bin/env python
# -*- coding: utf-8 -*- #
from __future__ import unicode_literals
AUTHOR = 'Isaac'
SITENAME = 'Isaac's blog'
SITEURL = ''
PATH = 'content'
TIMEZONE = 'America/Los_Angeles'
DEFAULT_LANG = 'en'
# Feed generation is usually not desired when developing
FEED_ALL_ATOM = None
CATEGORY_FEED_ATOM = None
TRANSLATION_FEED_ATOM = None
AUTHOR_FEED_ATOM = None
AUTHOR_FEED_RSS = None
# Blogroll
LINKS = (('Pelican', 'http://getpelican.com/'),
('Python.org', 'http://python.org/'),
('Jinja2', 'http://jinja.pocoo.org/'),
('You can modify those links in your config file', '#'),)
# Social widget
SOCIAL = (('You can add links in your config file', '#'),
('Another social link', '#'),)
DEFAULT_PAGINATION = 10
THEME='basic'
# Uncomment following line if you want document-relative URLs when developing
RELATIVE_URLS = True
您需要转义 SITENAME 中的撇号
所以改变:
SITENAME = 'Isaac's blog'
至:
SITENAME = 'Isaac\'s blog'
或者,更简单
SITENAME = "Isaac's blog"
转到base.html 文件,该文件通常位于任何主题的模板文件夹中。然后找到 '|format(' 并将其替换为不带引号的 '.format(slug='。这应该可以修复错误“TypeError:并非所有参数都在字符串格式化期间转换。”
也就是说,转
{{ CATEGORY_FEED_ATOM|format(category.slug) }}
进入
{{ CATEGORY_FEED_ATOM.format(slug='category.slug') }}
首先用 pelican 创建一个简单的静态页面。一切正常,直到我将主题更改为 basic theme
。在本地 运行 没问题,但我尝试执行 make github
或 make publish
我收到此错误:
CRITICAL: TypeError: not all arguments converted during string formatting Makefile:75: recipe for target 'publish' failed make: *** [publish] Error 1
我按照文档中的说明安装了主题,但它不起作用。 下面是我的 pelicanconf.py
#!/usr/bin/env python
# -*- coding: utf-8 -*- #
from __future__ import unicode_literals
AUTHOR = 'Isaac'
SITENAME = 'Isaac's blog'
SITEURL = ''
PATH = 'content'
TIMEZONE = 'America/Los_Angeles'
DEFAULT_LANG = 'en'
# Feed generation is usually not desired when developing
FEED_ALL_ATOM = None
CATEGORY_FEED_ATOM = None
TRANSLATION_FEED_ATOM = None
AUTHOR_FEED_ATOM = None
AUTHOR_FEED_RSS = None
# Blogroll
LINKS = (('Pelican', 'http://getpelican.com/'),
('Python.org', 'http://python.org/'),
('Jinja2', 'http://jinja.pocoo.org/'),
('You can modify those links in your config file', '#'),)
# Social widget
SOCIAL = (('You can add links in your config file', '#'),
('Another social link', '#'),)
DEFAULT_PAGINATION = 10
THEME='basic'
# Uncomment following line if you want document-relative URLs when developing
RELATIVE_URLS = True
您需要转义 SITENAME 中的撇号 所以改变:
SITENAME = 'Isaac's blog'
至:
SITENAME = 'Isaac\'s blog'
或者,更简单
SITENAME = "Isaac's blog"
转到base.html 文件,该文件通常位于任何主题的模板文件夹中。然后找到 '|format(' 并将其替换为不带引号的 '.format(slug='。这应该可以修复错误“TypeError:并非所有参数都在字符串格式化期间转换。”
也就是说,转
{{ CATEGORY_FEED_ATOM|format(category.slug) }}
进入
{{ CATEGORY_FEED_ATOM.format(slug='category.slug') }}