0

首先用 pelican 创建一个简单的静态页面。一切正常,直到我将主题更改为basic theme. 本地运行良好,但我尝试执行make githubmake publish出现此错误:

CRITICAL:TypeError:字符串格式化期间并非所有参数都转换 Makefile:75:目标“发布”的配方失败 make:*** [发布]错误 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
4

2 回答 2

10

转到 base.html 文件,该文件通常位于任何主题的模板文件夹中。然后找到 '|format(' 并将其替换为不带引号的 '.format(slug='。这应该可以修复错误“TypeError: not all arguments convert during string formatting.”

换句话说,转

{{ CATEGORY_FEED_ATOM|format(category.slug) }}

进入

{{ CATEGORY_FEED_ATOM.format(slug='category.slug') }}
于 2019-03-12T20:55:17.070 回答
0

您需要转义 SITENAME 中的撇号所以更改:

    SITENAME = 'Isaac's blog'

至:

    SITENAME = 'Isaac\'s blog'

或者,更容易

    SITENAME = "Isaac's blog"
于 2019-01-05T00:56:08.140 回答