====== GAE中使用静态文件的三种方法 ======
===== 1) app.yaml中指定为静态文件/文件夹 =====
在app.yaml文件里定义,这是最常见,最简单的方法,如:
- url: /media
static_dir: media
注意:
* 如果引用模板,则不能把templates定义为静态文件目录,否则会提示 TemplateDoesNotExist Error
===== 2)使用zipserve =====
使用zipserve,好处是可以把很多文件打包,因为GAE有1000个文件限制,如:
在根目录下添加tinymce.zip文件(不能为.rar)
在app.yaml里添加:
- url: /tinymce/.*
script: $PYTHON_LIB/google/appengine/ext/zipserve
然后在view.py文件里导入zipserve模块
from google.appengine.ext import zipserve
在模板文件里就可以直接这样引用:
/tinymce/xxxxxx
注意:app.yaml里好象只能定义一个zipserve,例如
我已经定义了
- url: /tinymce/.*
script: $PYTHON_LIB/google/appengine/ext/zipserve
就不能再定义
- url: /syntaxhighlighter/.*
script: $PYTHON_LIB/google/appengine/ext/zipserve
本人测试不能正常调用/syntaxhighlighter/里的文件
===== 3)使用django的静态文件服务 =====
在urls.py里添加
import os
urlpatterns = auth_patterns + patterns('',
……
(r'^themes/(?P.*)$', 'django.views.static.serve',
{'document_root': os.path.dirname(os.path.abspath(__file__)) + '/themes/'}),
) + urlpatterns