Gestión de Expedientes de Agrimensores.
gea es una aplicación web basada en Django para gestionar expedientes de agrimensores. Hasta ahora sólo fue usada en la provincia de Santa Fe, Argentina.
- GNU/Linux
- Python 3.6
- Django 1.8.9
- psycopg2 2.6.1 (opcional si utiliza PostgreSQL)
- Grappelli 2.7.3
- django-nested-admin 2.1.8 (para formularios anidados)
- FileBrower 3.6.4 (para manejo de archivos)
$ pip install gea
Se instalan también los requirements
como Django, Grappelli y nested-admin. Si además quiere utilizar PostgreSQL para la Base de Datos, deberá instalar manualmente psycopg2.
$ pip install psycopg2
$ django-admin startproject estudio
$ # dentro de "estudio"
$ vim estudio/settings.py
- Agregar
gea
,grappelli
(opcional) ynested_admin
a lasINSTALLED_APPS
:
INSTALLED_APPS = (
'grappelli', # opcional
...
'gea.apps.GeaConfig',
'nested_admin',
)
- Se pueden acomodar el Idioma y la TimeZone
LANGUAGE_CODE = 'es-AR'
TIME_ZONE = 'America/Argentina/Buenos_Aires'
- Opcionalmente, configurar la Base de Datos para utilizar PostgreSQL, de otro modo, Django usa SQLite3 por defecto. Editar
settings.py
.
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'gea',
'USER': '<postgresql-user>',
'PASSWORD': '<postgresql-password>', # be creative
'HOST': 'localhost',
}
}
con esta opción se debe crear la BD, con el comando createdb
de PostgreSQL
$ createdb gea
$ # dentro de "estudio"
$ vim estudio/urls.py
- Importar las vistas de
gea
y agregar las urls de las aplicaciones que instalamos:
from django.conf.urls import include, url
from django.contrib import admin
from gea.views import Home
urlpatterns = [
...
url(r'^grappelli/', include('grappelli.urls')), # opcional
url(r'^gea/', include('gea.urls')),
url(r'^$', Home.as_view(), name='home'),
url(r'^nested_admin/', include('nested_admin.urls')),
]
$ # dentro de "estudio"
$ python manage.py makemigrations gea
$ python manage.py migrate
$ python manage.py createsuperuser
makemigrations
y migrate
ponen a punto la base de datos, createsuperuser
instala el sistema de autenticación de Django, Django's auth system, con lo cual, pedirá usuario, mail y contraseña, por ejemplo: admin y Af7Dr2ujW. Con estos datos ingresaremos después a la interfaz de administración.
Por último, algo muy importante: los archivos de estilo, imágenes y scripts que usará nuestra nueva aplicación.
Editar settings.py
agregando la siguiente linea:
STATIC_ROOT = './static/'
Y ejecutar:
$ # dentro de "estudio"
$ python manage.py collectstatic
¡LISTO... Ahora podemos probar cómo quedó nuestra django-app!
$ # dentro de "estudio"
$ python manage.py runserver
e ingresamos a https://127.0.0.1:8000/... con los datos del superusuario que creamos antes.