En la oficina se necesitaba una forma eficiente de manejar la compra y stock de bebidas, y por ello surgió Drinklogger. El objetivo es que uno en pocos pasos pueda dejar marcado qué bebida tomó, en qué momento y el precio en el que estaba en ese momento (debido a que el precio de la bebida puede cambiar con el tiempo). También, tiene una ABM (Flask) para que cualquiera sea el encargado pueda agregar usuarios y el stock a la base de datos (PostgreSQL).
- Python 2 (Python 3 no probado)
- PostgreSQL
Clonar el repositorio
git clone https://github.com/MSA-Argentina/Drinklogger.git
Crear un entorno virtual con virtualenvwrapper
mkvirtualenv drinklogger
O tan sólo virtualenv.
virtualenv drinklogger
Luego, ejecutar el archivo requeriments.txt con pip.
pip install -r requirements.txt
Después, si no hubo errores en la instalación de los requerimientos, editar el archivo config.py en las siguientes líneas:
# Configuracion
DATABASE = {
'name': '',
'engine': '',
'user': '',
'pass': '',
}
DEBUG = False # Activar fuera del repo
SECRET_KEY = '' # Agregar fuera del repo
Agregando el nombre de la base de datos, el motor (Por default usamos PostgreSQL), el usuario, la contraseña de la base de datos y agregar un valor a SECRET_KEY. Si se está probando, es recomendable cambiar DEBUG de False a True.
Y finalmente, ejecutar el archivo main.py.
python main.py
Estos son posibles errores que puede haber en la instalación.
En Linux, instalar python-dev y postgresql-server-dev-9.3 para que psycopg2 pueda compilar.
sudo apt-get install python-dev postgresql-server-dev-9.3
En Windows usar el instalador gráfico.
Sí, ambos son soportados. Pero en vez de psycopg2 tiene que instalar pysqlite para SQLite y mysql-connector-repackaged en MySQL.
Para crear un usuario admin default necesitan correr este código python desde la línea de comando o mismo desde el __main__
from config import auth
auth.User.create_table(fail_silently=True) # make sure table created.
admin = auth.User(username='admin', email='', admin=True, active=True)
admin.set_password('admin')
admin.save()
Una vez corrido, pueden entrar como usuario admin y password admin. Es recomendable cambiar esto.
- Forkeá
- Crea un branch nuevo
- Hace los cambios
- Tirá un pull request :)