如何在烧瓶中使用utf-8字符传递配置设置?

时间:2014-01-14 17:51:40

标签: encoding character-encoding flask flask-flatpages

我在Flask中创建了一个静态站点生成器,运行Python 2.7。

整个网站有一些常见的设置,在app.py中声明,例如全局网站名SITENAME,其中每个网页上都填充了<title>的一部分。

它适用于普通的ASCII符号,但只要我输入德语变音符号(或任何非ASCII代码),它就会中断。

from flask import Flask, render_template, url_for
from flask_flatpages import FlatPages

DEBUG = True
FLATPAGES_AUTO_RELOAD = DEBUG
FLATPAGES_EXTENSION = '.md'
SITENAME = "Übungstitel"

app = Flask(__name__)
app.config.from_object(__name__)
pages = FlatPages(app)

我试图在序言中声明编码:

#!/usr/bin/python
# -*- coding: utf-8 -*-

但这也没有解决,因为flask根本不会启动。

如何将非ASCII标题作为全局设置传递给我的flask应用程序?

1 个答案:

答案 0 :(得分:2)

如果您使用的是Python 2.x,则需要传递它有一个unicode对象。

SITENAME = u"Übungstitel"

您拥有的代码将与Python 3.x一起使用。您还可以删除coding声明,因为utf-8是Python 3的默认声明。