我用django-piston为我的REST json api,而且我已经通过在产生思想功能方面建造的笔记来编制文件。 在django经营服务器下,它发挥了巨大作用。 试射物体的模板成功地列出了该类别和每种方法的示意图。
当我通过 n子和uwsgi为这个地点服务时,这种铺设是空洞的。 我首先认为,这是 d木标记过滤器和采用经过调整的文字编排格式的一个问题,但当我转而去,只是试图在模板中看到原始标识值时,这些数值是没有的。
我看不出这些记录中的任何问题,我无法理解为什么 n子/u子是这里的因素,但坦率地说,这在dev子的管理人身上是巨大的。 我 kind着如何开始通过 n子/u子来抓。 是否有任何人陷入这种局面,或建议我可以开始研究什么地方?
我的看法非常简单:
<>views.py
def ApiDoc(request):
docs = [
generate_doc(handlers.UsersHandler),
generate_doc(handlers.CategoryHandler),
]
c = {
docs : docs,
model : Users
}
return render_to_response("api/docs.html", c, RequestContext(request))
我的模板几乎与存货表格式相同:
api/docs.html>
{% load markup %}
...
{% for doc in docs %}
<h5><a href="#top">top</a></h5>
<h3><a id="{{doc.name}}">{{ doc.name|cut:"Handler" }}:</a></h3>
<p>
{{ doc.doc|default:""|restructuredtext }}
</p>
...
{% for method in doc.get_all_methods %}
{% if method.http_name in doc.allowed_methods %}
<dt><a id="{{doc.name}}_{{method.http_name}}">request</a> <i>{{ method.http_name }}</i></dt>
{% if method.doc %}
<dd>
{{ method.doc|default:""|restructuredtext }}
<dd>
{% endif %}
该模板在正文中得出的结果是doc.doc
和method.doc/code>无。 我已尝试取消过滤器,只是检查原材料,以证实这一点。
我猜想这个问题,在乌韦西人层及其环境中一定会存在。 like:
<>strong>/etc/init/uwsgi.conf
description "uWSGI starter"
start on (local-filesystems
and runlevel [2345])
stop on runlevel [016]
respawn
exec /usr/sbin/uwsgi
--uid www-data
--socket /opt/run/uwsgi.sock
--master
--logto /opt/log/uwsgi_access.log
--logdate
--optimize 2
--processes 4
--harakiri 120
--post-buffering 8192
--buffer-size 8192
--vhost
--no-site
我的原始服务器入口处也这样看:
sites-enabled/mysite.com>
server {
listen 80;
server_name www.mysite.com mysite.com;
set $home /var/www/mysite.com/projects/mysite;
set $pyhome /var/www/mysite.com/env/mysite;
root $home;
...
location ~ ^/(admin|api)/ {
include uwsgi_params;
uwsgi_pass uwsgi_main;
uwsgi_param UWSGI_CHDIR $home;
uwsgi_param UWSGI_SCRIPT wsgi_app;
uwsgi_param UWSGI_PYHOME $pyhome;
expires epoch;
}
...
}
<>Edit: 配置信息
- Server: Ubuntu 11.04
- uWSGI version 1.0
- nginx version: nginx/1.0.11
- django non-rel 1.3.1
- django-piston latest pypi 0.2.3
- python 2.7