- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个问题。我安装了 pgadmin3。创建了一个编码为 UTF-8 的库。创建一个文件index.py:
# -*- coding utf-8 -*-
from bottle import route, run, template, request, install
from bottle_pgsql import PgSQLPlugin
install(PgSQLPlugin('dbname=test, user=postgres password=111'))
@route('/hello')
def hello(db):
c = db.execute('''SELECT gorod FROM gorod''')
result = c.fetchone()
return template('hello', rows=result)
run (host='localhost', port=8080, debug=True)
接下来我创建了 tpl 文件 hello.tpl:
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>Статистика</title>
</head>
<body>
<h1>{{rows}}</h1>
</body>
</html>
当我转到页面 http://localhost:8080/hello error:
Critical error while processing request: /hello
Error:
UnicodeDecodeError('utf8', 'Traceback (most recent call last):\n File "C:\\Users\\User\\Desktop\\test\\bottle.py", line 862, in _handle\n return route.call(**args)\n File "C:\\Users\\User\\Desktop\\test\\bottle.py", line 1732, in wrapper\n rv = callback(*a, **ka)\n File "C:\\Users\\User\\Desktop\\test\\bottle_pgsql.py", line 83, in wrapper\n con = psycopg2.connect(dsn)\n File "C:\\Python27\\lib\\site-packages\\psycopg2\\__init__.py", line 164, in connect\n conn = _connect(dsn, connection_factory=connection_factory, async=async)\nOperationalError: \xc2\xc0\xc6\xcd\xce: \xe1\xe0\xe7\xe0 \xe4\xe0\xed\xed\xfb\xf5 "test," \xed\xe5 \xf1\xf3\xf9\xe5\xf1\xf2\xe2\xf3\xe5\xf2\n\n', 512, 513, 'invalid continuation byte')
Traceback:
Traceback (most recent call last):
File "C:\Users\User\Desktop\test\bottle.py", line 954, in wsgi
out = self._cast(self._handle(environ))
File "C:\Users\User\Desktop\test\bottle.py", line 907, in _cast
out = self.error_handler.get(out.status_code, self.default_error_handler)(out)
File "C:\Users\User\Desktop\test\bottle.py", line 842, in default_error_handler
return tob(template(ERROR_PAGE_TEMPLATE, e=res))
File "C:\Users\User\Desktop\test\bottle.py", line 3595, in template
return TEMPLATES[tplid].render(kwargs)
File "C:\Users\User\Desktop\test\bottle.py", line 3399, in render
self.execute(stdout, env)
File "C:\Users\User\Desktop\test\bottle.py", line 3386, in execute
eval(self.co, env)
File "<string>", line 26, in <module>
File "C:\Users\User\Desktop\test\bottle.py", line 3337, in <lambda>
self._escape = lambda x: escape_func(touni(x, enc))
File "C:\Users\User\Desktop\test\bottle.py", line 123, in touni
return s.decode(enc, err) if isinstance(s, bytes) else unicode(s)
File "C:\Python27\lib\encodings\utf_8.py", line 16, in decode
return codecs.utf_8_decode(input, errors, True)
UnicodeDecodeError: 'utf8' codec can't decode byte 0xc2 in position 512: invalid continuation byte
你能帮帮我吗?对不起,我的英语不好 ;)谢谢
最佳答案
您是否尝试过使用 UTF-8 对您的模板文件进行编码?
以 iconv 为例:
iconv -f ascii -t utf-8 "hello.tpl" -o "hello.tpl"
编辑:您可以使用iconv for windows here
关于Python 瓶 + postgresql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30354083/
我收到以下错误: (virtualenv)[chirdeep@fedora-desktop ~]$ python programs/python/myrestapi.py Traceback (mos
我有一个问题。我安装了 pgadmin3。创建了一个编码为 UTF-8 的库。创建一个文件index.py: # -*- coding utf-8 -*- from bottle import rou
好吧,所以这可能有点不正统或者我只是愚蠢或两者兼而有之:) 我正在尝试一个非常简单的设置,我在一个 Process 实例中启动一个 bottle 服务器,并在另一个实例中启动一个小型 TFTP 服务器
当我尝试运行此示例中的服务器时,我可以看到它在正确的端口上运行。但是,无法从外部访问它(内部服务器错误),也无法通过常见方法在控制台中对其进行调试(看不到任何输出)。 我确定端口可用并且服务器正在运行
我想为 Sierra 创建一瓶 zsh 5.1.1,因为 zsh 5.2 有一个非常糟糕的错误,它破坏了某些功能。 Sierra 附带 zsh 5.2,它在多字节绑定(bind)键击中被破坏(参见:h
当 http GET 请求发送到特定路由时,我尝试调用函数,但我想将参数传递给给定函数。例如,我有以下内容: self.app.route('/here', ['GET'], self.her
我开始开发一个 Python 3.4 应用程序,用 Bottle 框架为一个小网站(主要是媒体库)提供服务。我正在使用 Bottle 的“简单模板引擎” 我有一个 YAML 文件,指向一个包含图像和其
自从 versions 被删除以来,我一直无法找到安装以前版本软件的方法。命令并点击 Homebrew。我在 2008 Mac Pro (3,1) 上运行 macOS 10.14.3 (Mojave)
我正在使用Bottle用于渲染网页的 Web 框架。我使用 Bottle 模板引擎从 Python 传递变量,然后在嵌入了 Python 代码的模板文件中对它们进行相应的处理。 现在,当我在模板中使用
@route('/locations', method='GET') def get_location(): entity = db['locations'].find({'coordinat
在使用 app.mount 时尝试在 URL 路径中使用特殊字符失败: http://127.0.0.1:8080/test/äöü 结果: Error: 400 Bad Request Invali
我最近收到了一个部分完成的项目,而且我对使用 Bottle 还不熟悉。我遇到过这样的情况:我在 AJAX 请求中发送字典,而 Bottle 位于服务器端。字典看起来像这样(在 JavaScript 中
我的服务器处理多个网站,其中大多数使用 Apache、PHP 等。 但其中一个 (www.mywebsite.com) 使用 Python Web 服务器,该服务器监听端口 8092。因此,此 Apa
我是一名优秀的程序员,十分优秀!