Saltar a contenido

Creación de Aplicaciones

Luego pasamos al siguiente paso que corresponde iniciar las aplicaciones que integran el sitio web, que para este caso serian (ventas, productos y clientes).

Para una mejor organización de las aplicaciones crearemos una carpeta llamadas Apps. y dentro de esta carpeta creamos ventas y compras.

sudo mkdir myapps
cd myapps
django-admin startapp sale
django-admin startapp product
django-admin startapp client

Registro de la aplicaciones

Ahora que se ha creado la aplicación tenemos que registrarla en el proyecto de manera que sea incluida cuando cualquiera de las herramientas se ejecute (por ejemplo, para añadir modelos a la base de datos). Las aplicaciones se registran añadiéndolas a la lista de INSTALLED_APPS en los ajustes del proyecto.

Abre el fichero de ajustes del proyecto sitealmacen/sitealmacen/settings.py y encuentra la definición de la lista INSTALLED_APPS. Añade a continuación una nueva linea al final de la lista, como se muestra en negrilla abajo.

En la aplicación sale: Para ello, primero cambie en

myapps/sale/apps.py

name = 'sale' por name = 'myapps.``sale``', debido a que nuestras aplicaciones las hemos incluido dentro de Apps. y por defecto Django asume que se instalan en el raíz de la carpeta de aplicación. como se muestra a continuación.

from django.apps import AppConfig


class SaleConfig(AppConfig):
    default_auto_field = 'django.db.models.BigAutoField'
    name = 'myapps.sale'

En la aplicación product: Para ello, primero cambie name = 'product' por name = 'Apps.productos', debido a que nuestras aplicaciones las hemos incluido dentro de Apps. y por defecto Django asume que se instalan en el raíz de la carpeta de aplicación. como se muestra a continuación.

from django.apps import AppConfig


class ProductosConfig(AppConfig):
    default_auto_field = 'django.db.models.BigAutoField'
    name = 'myapps.product'

En la aplicación client: Para ello, primero cambie name = 'client' por name = 'myapps.clientes', debido a que nuestras aplicaciones las hemos incluido dentro de Apps. y por defecto Django asume que se instalan en el raíz de la carpeta de aplicación. como se muestra a continuación.

from django.apps import AppConfig


class ClientConfig(AppConfig):
    default_auto_field = 'django.db.models.BigAutoField'
    name = 'myapps.client'

Luego, se registra en settings.py

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'myapps.sale.apps.SaleConfig',
    'myapps.product.apps.ProductConfig',
    'myapps.client.apps.ClientConfig',
]

Probamos hasta aqui:

Otros ajustes del proyecto

El Archivo settings.py se usa para configurar muchos otros ajustes, pero en este punto probablemente sólo querrás cambiar la TIME_ZONE --- ésta debería ser igual a una cadena de la Lista de base de datos tz de time zones (la columna TZ column de la tabla contiene los valores que quieres). Cambia tu TIME_ZONE al valor de entre estas cadenas que sea apropiado para tu zona de tiempo, por ejemplo:

LANGUAGE_CODE = 'es'
TIME_ZONE = 'America/Bogota'

Hay otros dos otros ajustes que no cambiarás ahora, pero de los que deberías ser consciente:

  • SECRET_KEY. Ésta es una clave secreta que se usa como parte de la estrategia de seguridad del sitio web de Django. Si no vas a proteger este código durante el desarrollo, necesitarás usar un código diferente (quizás leyendo de una variable de entorno o un fichero) cuando lo pongas en producción.

  • DEBUG. Ésto habilita que los registros (logs) de depuración se muestren en caso de error, en vez de las respuestas con los códigos de estado HTTP. Éste debería ajustarse a false en producción, ya que la información de depuración es útil a los atacantes.