Diferencia entre revisiones de «Lolstats Documentación Técnica»
Línea 8: | Línea 8: | ||
Usaremos además el sistema operativo Linux para hacer todo el proyecto por su facilidad para trabajar en la Web. Las instrucciones siguientes aplican para cualquier distribución basada en Debian. | Usaremos además el sistema operativo Linux para hacer todo el proyecto por su facilidad para trabajar en la Web. Las instrucciones siguientes aplican para cualquier distribución basada en Debian. | ||
== Configuración del entorno == | |||
Necesitaremos dos directorios principales: | |||
* '''Directorio de código''': Aquí se colocará el proyecto Django y los cripts python necesarios. Ej: ~/lolstats/ | |||
* '''Directorio de datos''': Aquí se colocarán los datos extraídos de la API de Riot y del repositorio de recursos. Ej: ~/datos/ | |||
== MariaDB (MySQL) == | == MariaDB (MySQL) == | ||
Línea 30: | Línea 37: | ||
<code>CREATE USER 'usuario'@'localhost' IDENTIFIED BY 'password';</code><br> | <code>CREATE USER 'usuario'@'localhost' IDENTIFIED BY 'password';</code><br> | ||
<code>GRANT ALL PRIVILEGES ON `lolstats`.* TO 'usuario'@'localhost';</code><br> | <code>GRANT ALL PRIVILEGES ON `lolstats`.* TO 'usuario'@'localhost';</code><br> | ||
== Herramientas extras (Opcinales) == | |||
* '''Git''': Para control de versiones. | |||
* '''Tmux''': Para navegar entre ventanas de terminal. | |||
* '''Vim''': Para editar archivos desde consola. | |||
== Django == | |||
Django es un framework de desarrollo web en Python basado en MVC, proporciona métodos convenientes para crear páginas web, servicios web y administrar bases de datos. | |||
=== Instalación de Python === | |||
Las distribuciones Linux ya traen instalada una versión de Python. Asumiremos que con esa funciona. | |||
Nótese que algunas veces el comando para usar python 3.x es ''python3'' en lugar de ''python''. | |||
'''TODO''': Agregar guía de instalación para la versión de Python usada. | |||
==== Entorno virtual ==== | |||
Es recomendable trabajar en un entorno virtual para que futuras actualizaciones no afecten nuestro proyecto. | |||
Instalamos el paquete. | |||
<code>pip install venv</code><br> | |||
Nos movemos al directorio de código y creamos el entorno virtual. | |||
<code>cd ~/lolstats/</code><br> | |||
<code>python -m venv venv</code><br> | |||
Activamos el entorno: | |||
<code>source venv/bin/activate</code> | |||
A partir de ahora todo lo que hagamos en Python se hará con el entorno virtual. Recuerda siempre activar el entorno antes de ejecutar Python o pip. | |||
=== Django === | |||
==== Instalación ==== | |||
Para instalar el release oficial: | |||
<code>pip install django</code><br> | |||
==== Creación del proyecto ==== | |||
Solo cubriremos lo relacionado con el modelo de aprendizaje y no lo relativo a la página web. | |||
Para crear el proyecto utilizamos el comando: | |||
<code>django-admin startproject lolstats</code><br> | |||
Para poder empezar a recopilar nuestros datos necesitamos configurar el acceso a base de datos. | |||
Editar el archivo ~/lolstats/lolstats/settings.py | |||
'''TODO:''' Poner campos a editar. |
Revisión del 19:50 12 feb 2022
En este apartado se detalla el proceso de configuración, planeación y codificación del proyecto Lolstats.
Entorno y Herramientas
Dada su facilidad de uso, configuración y versatilidad para la IA, usaremos Python como lenguaje de programación principal.
La idea final del proyecto es poner el modelo disponible en una página web donde los usuarios puedan consultarlo, es por ello que usaremos Django como framework de desarrollo. También usaremos la facilidad que tiene para crear y administrar una base de datos.
Usaremos además el sistema operativo Linux para hacer todo el proyecto por su facilidad para trabajar en la Web. Las instrucciones siguientes aplican para cualquier distribución basada en Debian.
Configuración del entorno
Necesitaremos dos directorios principales:
- Directorio de código: Aquí se colocará el proyecto Django y los cripts python necesarios. Ej: ~/lolstats/
- Directorio de datos: Aquí se colocarán los datos extraídos de la API de Riot y del repositorio de recursos. Ej: ~/datos/
MariaDB (MySQL)
MySQL es un sistema de gestión de bases de datos basado en lenguaje SQL, es gratuito aunque es propiedad de Oracle, por eso mejor usaremos la versión de código libre llamada MariaDB la cuál tiene exactamente las mismas características.
Instalación
sudo apt update
sudo apt install mariadb-server
sudo mysql_secure_installation
A mi me gusta desactivar la validación de password porque es muy restrictiva.
mysql -u root -p
uninstall plugin validate_password;
Creación de Base de datos
mysql -u root -p
CREATE DATABASE lolstats;
CREATE USER 'usuario'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON `lolstats`.* TO 'usuario'@'localhost';
Herramientas extras (Opcinales)
- Git: Para control de versiones.
- Tmux: Para navegar entre ventanas de terminal.
- Vim: Para editar archivos desde consola.
Django
Django es un framework de desarrollo web en Python basado en MVC, proporciona métodos convenientes para crear páginas web, servicios web y administrar bases de datos.
Instalación de Python
Las distribuciones Linux ya traen instalada una versión de Python. Asumiremos que con esa funciona.
Nótese que algunas veces el comando para usar python 3.x es python3 en lugar de python.
TODO: Agregar guía de instalación para la versión de Python usada.
Entorno virtual
Es recomendable trabajar en un entorno virtual para que futuras actualizaciones no afecten nuestro proyecto.
Instalamos el paquete.
pip install venv
Nos movemos al directorio de código y creamos el entorno virtual.
cd ~/lolstats/
python -m venv venv
Activamos el entorno:
source venv/bin/activate
A partir de ahora todo lo que hagamos en Python se hará con el entorno virtual. Recuerda siempre activar el entorno antes de ejecutar Python o pip.
Django
Instalación
Para instalar el release oficial:
pip install django
Creación del proyecto
Solo cubriremos lo relacionado con el modelo de aprendizaje y no lo relativo a la página web.
Para crear el proyecto utilizamos el comando:
django-admin startproject lolstats
Para poder empezar a recopilar nuestros datos necesitamos configurar el acceso a base de datos.
Editar el archivo ~/lolstats/lolstats/settings.py
TODO: Poner campos a editar.