[웹] GAE 에서 django 사용하기 - Djangae 사용

gae static


Djangae


몇가지 "windows 환경"을 위해 수정했다.

  • install_deps
  • rename_scaffold_app.py

이제는 아래 명령으로 source 를 원하는 project 이름으로 template을 download 할 수 있다.

  1. pip install django
  2. django-admin.py startproject --template https://github.com/potatolondon/djangae-scaffold/zipball/master --extension py,yaml,md myproject



install_deps

이제 myproject 폴더 안에 있는 insatll_deps 를 실행하면 된다.
  • set path=%path%;c:\python27;c:\python27\Scripts;c:\Program Files (x86)\Git\bin
  • pip install --upgrade setuptools
  • c:\Python27\python.exe install_deps


rename_scaffold_app.py

그리고 rename_scaffold_app.py <project_name> 를 실행하자.


확인 및 실행

여기까지 잘되면, 이제 아래 명령어를 통해 확인해 보면 된다.

  • manage.py checksecure --settings=scaffold.settings_live
  • manage.py runserver

app.yaml

이제 app.yaml 에서 application id 만 수정해 주면 된다.
application: myproject-id
version: 1
runtime: python27
api_version: 1
threadsafe: true

handlers:
...

필요한 module 추가

만약 djangorestframework module 을 추가한다고 하면 아래처럼 하면 된다. 그리고 INSTALLED_APPS 에 추가해 주자.(module 에 따라 다르다.)
c:\Python27\Scripts\pip install djangorestframework -t sitepackages -I



Deployment

appcfg.py update ./


.appcfg_oauth2_tokens

간혹 제대로 안된 경우라면 아래 같은 메시지를 보게 된다. 이 경우 windows 에서는
c:\Users\<user_id>\.appcfg_oauth2_tokens
위의 파일을 지우고 다시 해 보면 위의 화면을 다시 볼 수 있다.

d:\mine\programming\python\gae-echoserver>appcfg.py update .
11:17 AM Application: echoserver-1128; version: 1
11:17 AM Host: appengine.google.com
11:17 AM
Starting update of app: echoserver-1128, version: 1
11:17 AM Getting current resource limits.
2015-11-13 11:17:26,029 ERROR appcfg.py:2438 An error occurred processing file '': HTTP Error 403: Forbidden Unexpected HTTP status 403. Aborting.
Error 403: --- begin server output ---
You do not have permission to modify this app (app_id=u's~echoserver-1128').
--- end server output ---




Django ORM 대신 ndb 를 사용할 경우



template 등 static file 을 처리할 때

django 를 이용하지 않고, app.yaml 을 이용한다. 아래 글을 참고하자.



Reference

  1. Setting Up Basic Application (Part 2 - Django...

댓글 없음:

댓글 쓰기