django sharing
DESCRIPTION
Django sharing on django tutorial Taipei on July 9th.TRANSCRIPT
DJANGOa little sharing陳炯廷 @ House123
13年7月9⽇日星期⼆二
JINJA2http://jinja.pocoo.org/docs/
13年7月9⽇日星期⼆二
{%- %}就不會出現空⽩白⾏行 (潔癖 orz)
13年7月9⽇日星期⼆二
{{ movie.is_showing() }}
13年7月9⽇日星期⼆二
settings.pyfrom unipath import PathPROJECT_DIR = Path(__file__).ancestor(3)MEDIA_ROOT = PROJECT_DIR.child(‘media’)STATIC_ROOT = PROJECT_DIR.child(‘static_collected’)
13年7月9⽇日星期⼆二
settings.py
keys = [ 'FACEBOOK_APP_ID', 'FACEBOOK_API_SECRET', 'AWS_ACCESS_KEY_ID', 'AWS_SECRET_ACCESS_KEY', 'MANDRILL_API_KEY', 'ANALYTICS_CODE', 'BROKER_URL',]
for key in keys: if key not in locals(): if key not in os.environ: print '%s not found in ENVIRONMENT' % key else: vars()[key] = os.environ[key]
13年7月9⽇日星期⼆二
virtualenvwrapper
$ workon moviefun(moviefun)$
13年7月9⽇日星期⼆二
virtualenvwrapper
[~/envs/moviefun/bin/postactivate]export AWS_ACCESS_KEY_ID=blablablaexport AWS_SECRET_ACCESS_KEY=blablabla
13年7月9⽇日星期⼆二
moviefun.twmoviefun.com.hk
def nav(request): if request.path[0] == '/': path = request.path[1:] else: path = request.path
splited = path.split('/') out = {}
for index, part in enumerate(splited): out['nav_%d' % index] = part
domain_name = request.META.get('HTTP_HOST').split(':')[0]
out['query_city'] = 'taipei' if domain_name.split('.')[-‐1] == 'hk': out['query_city'] = 'hongkong'
return out
context_processors.py
13年7月9⽇日星期⼆二
def analytics(request): if hasattr(settings, 'ANALYTICS_ACCOUNT'): return {'ANALYTICS_ACCOUNT': settings.ANALYTICS_ACCOUNT}
return {}
context_processors.py
13年7月9⽇日星期⼆二
dir layoutmoviefun/ django/ moviefun/ settings/ ticket/ templates/ static/ 3rd_party/ jQuery/ 1.10.2/ css/ js/ images/ media/ static_collected/
13年7月9⽇日星期⼆二
moviefun/ django/ moviefun/ settings/ ticket/ templates/ static/ 3rd_party/ jQuery/ 1.10.2/ css/ js/ images/ media/ static_collected/
dir layout
heroku要在第⼀一層
13年7月9⽇日星期⼆二
BULK IMPORTMicrosoft Excel
xlrdxlwd
13年7月9⽇日星期⼆二
CELERY / GEVENT
13年7月9⽇日星期⼆二
DJANGO-COMPRESSORDJANGO-PIPELINE
13年7月9⽇日星期⼆二