Django

De Cacauet Wiki
Salta a la navegació Salta a la cerca

Django és un framework per sites web basat en Python.

OJU amb les versions. Per GAE 1.8.7 cal Django <= 1.5 , és a dir no Django 1.6 (Nov 2013).


Django

Algunes referències:

Setup:

  • Virtualenv
  • Iniciar projecte
    $ django-admin.py startproject myproj
  • Iniciar app:
    $ python manage.py startapp myapp
  • settings.py:
    • Ajustar DB
    • Afegir app
    • Activar admin
  • myapp/admin.py
    • registrar models a administrar (admin forms)
      admin.site.register( Soci )
  • Crear myapp/models.py
  • Crear taules:
    $ python manage.py syncdb
  • Engegar site:
    $ python manage.py runserver


Google App Engine

GAE:


Django i GAE

Unint Django i GAE:

Tutorial

Realitzat amb Django 1.5.5 i GAE 1.8.7


  1. Instal·la GIT i Mercurial:
    $ apt-get install git mercurial
  2. Descarregueu el GAE SDK i instal·leu-lo (unzip) a l'arrel i col·loqueu-lo al PATH amb:
    $ export PATH=$PATH:~/google_appengine
  3. Descarregar la testapp amb:
    $ git clone https://github.com/django-nonrel/django-testapp.git
  4. Descarregar la resta de paquets. Es pot fer de 2 maneres:
    1. Automàtica:
      $ ./build.sh
    2. Instal·lació manual (per diversos projectes):
      • Descarregar els paquets indicats aquí:
        http://www.allbuttonspressed.com/projects/djangoappengine
      • Instal·lar-los creant symlinks a l'arrel del nostre directori (tal i com explica la web).
  5. Crear una app amb
    $ python manage.py startapp app1
  6. Afegir la nova app al projecte. Modificar settings.py:
    INSTALLED_APPS = ( ... ,'app1', ...)
  7. Afegir el mòdul messages (no ve per defecte) a settings.py:
    INSTALLED_APPS = ( ... , 'django.contrib.messages', ...)
    MIDDLEWARE_CLASSES = ( ... , 'django.contrib.messages.middleware.MessageMiddleware' , ... )
  8. Crear usuari admin amb
    $ python manage.py createsuperuser
  9. Editar model de dades;
    • app1/models.py
      class ElmeuModel1(models.Model): ...
    • app1/admin.py
      admin.site.register(ElMeuModel1)
  10. Posar el server en marxa amb:
    $ python manage.py runserver
  11. Visitar la site a
    http://localhost:8080/app1
    http://localhost:8080/app1/admin