Notas de Luis

¡Esta es una revisión vieja del documento!


Nivel superior

Parte 2

# Nueva Aplicación Flask - Parte 1 - Desarrollo.

## Introduction

Tutorial de Desarrollo de una Aplicación con Flask y Gestión con systemd

Referencias: [Flask mega tutorial](https://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world)

## Requirements

* Linux server (Debian based) * Pipenv

## Preparación del Entorno de Desarrollo en Linux Mint

### Instalación de Dependencias

Primero, asegúrate de tener instaladas las dependencias necesarias en tu sistema Linux Mint. Pipenv es una herramienta para la gestión de dependencias de Python.

```bash sudo apt update sudo apt install python3-pip python3-dev curl pipenv ```

### Creación del Proyecto Crea un directorio para tu proyecto y navega a él:

```bash mkdir my_flask_app cd my_flask_app ``` ### Inicialización del Entorno Virtual con Pipenv

Inicializa un nuevo entorno virtual y crea un archivo `Pipfile`:

```bash pipenv shell ```

Esto creará un nuevo directorio en `.local` con los scripts de activate y desactivate. Yo suelo modificar el script de activate añadiendo al final `cd directorio_de_trabajo`.

Instalamos lo básico.

```bash pipenv install flask ```

Edit the .env file to add the `FLASK_APP` and `FLASK_DEBUG` environmental variables. With any editor add these two lines:

```ini FLASK_APP=wsgi.py FLASK_ENV=development FLASK_DEBUG=1 ```

`FLASK_ENV` es obsoleto, pero antes de eliminarlo hay que revisar que no esté siendo usado por código heredado de otras aplicaciones.

### Creación de la Aplicación Base

To set up a minimal Flask application create two files app.py and wsgi.py. The main Flask application will be stored in app.py. wsgi.py will be used to get the application running.

Crea un archivo `app.py` con el siguiente contenido:

```python from flask import Flask

app = Flask(name)

@app.route('/') def hello_world():

  return 'Hello, World!'

if name == 'main':

  app.run(debug=True)

```

Crea el fichero `wsgi.py`:

```python # wsgi.py from app import app ```

### Ejecución de la Aplicación

Activa el entorno virtual y ejecuta la aplicación:

```bash pipenv shell flask run –host '0.0.0.0' ```

```text * Tip: There are .env or .flaskenv files present. Do “pip install python-dotenv” to use them. * Serving Flask app 'wsgi.py' * Debug mode: off WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead. * Running on all addresses (0.0.0.0) * Running on http://127.0.0.1:5000 * Running on http://192.168.12.34:5000 Press CTRL+C to quit ```

Ahora, puedes acceder a tu aplicación en `http://127.0.0.1:5000`.

Now you can access the application from another computer using a browser, navigate to the server's IP address on port 5000. Make sure port 5000 is not blocked by a firewall so that you will be able to access your Flask application.

Since my server's IP address is 192.168.12.34 I access the Flask application from my laptop with a browser using this address:

`http://192.168.12.34:5000`

You should see `Hello World` in the browser.

Press CTRL+C to stop the Flask development server.

### Creación de secret key

```python import os os.urandom(24) ```

Esta clave secreta se puede configurar en luego en la aplicación, para mejorar la seguridad de la aplicación.

```python app.secret_key = '76aba94aaafb59debefd570b6378c747'

```

O si se usa un diccionario de configuración:

```python app.secret_key = config.dict['secret_key'] ```

computing/web/flask_app_1.1768333404.txt.gz · Última modificación: por alfabeto