用户工具

站点工具


google:gae:static-files

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

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