Manejar un proyecto de django con pipenv

Aqui vamos a crear como manejar un proyecto de django con los comandos de pipenv y con django-admin. No vamos a ver la instalación de pipenv, pero si vamos a ver la instalación de django en un entorno virtual. Asegurate de tener la versión de pipenv instalada y corriendo. Lo puedes ver en esta entrada Comando de pipenv.

Instala django y sus dependencia utilizando pipenv. Te sugiero que estes en un directorio vacío, ya que recuerda que el entorno virtual que se genera con pipenv, esta directamente asociado al directorio donde lo ejecutas.

$ pipenv install django-admin django django-ckeditor Pillow pylint pylint-django pylint-celery

donde:

  • django. Es el motor de django.
  • django-admin. Es el paquete que instala la consola de administración de django.
  • django-ckeditor. Es el paquete que permite colocar un editor de texto enriquecido para django.
  • Pillow. Es un paquete para el manejo de las imagenes en django.
  • pylint. Es la libreria que permite validar el codigo que vas realizando el python
  • pylint-django.
  • pylint-celery.

Con esto ya vamos a poder acceder a los paquetes que se instalaron, y por lo tanto, podemos utilizar la linea el django-admin de la siguiente forma para crear un proyecto.

$ pipenv django-admin startproject luidasa

Con eso se crea el proyecto, y debes de moverte a la carpeta luidasa, para ejecutar el proyecto, el cual se puede ejecutar activando el entorno virtual y por ultimo ejecutando el proyecto, con los siguientes comandos.

$ pipenv python manage.py runserver

Otras formas de iniciar el proyecto. Si ya activaste el entorno virtual

$ python manage.py runserver

Modificando el archivo Pipfile del entorno virtual, debes de agregar en la sección de scripts

[scripts]
luidasa="python luidasa/manage.py runserver"

Y con eso vas a poder ejecutarlo desde la terminal con

$ pipenv run luidasa

Configuración básica del proyecto

Para configurar el proyecto ingresa edita el archivo settings.py, y cambia los siguientes valores.

El idioma por defecto y la zona horaria que se va a utilizar.

# Internationalization
# https://docs.djangoproject.com/en/3.2/topics/i18n/

LANGUAGE_CODE = 'es-MX'

TIME_ZONE = 'America/Mexico_City'

La base de datos que se va a utilizar


# Database
# https://docs.djangoproject.com/en/3.2/ref/settings/#databases

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': BASE_DIR / 'db.sqlite3',
    }
}

Para algunos de los modulos que se encuentran precargados debes de crear la base de datos y hacer las migraciones correspondientes. En la ventana de comando y con el enviroment virtual activado ejecuta:

$ python manage.py migrate