Django Bootstrap

Salman Mehmood 13 junio 2022
Django Bootstrap

El objetivo principal de esta breve explicación es aprender cómo agregar Bootstrap al proyecto en Django, y también veremos algunas configuraciones sobre afirmaciones estáticas.

Configurar Bootstrap en Django

Empecemos. Tenemos un proyecto llamado demosite y una sola aplicación llamada blog, pero el proyecto único puede tener varias aplicaciones. Ahora veremos cómo conectar activos estáticos a nuestro proyecto y agregaremos elementos estáticos específicos de la aplicación.

Agregaremos un directorio static en la aplicación blog para que sean visibles y accesibles solo desde esta aplicación. A veces, desea agregar algunos estilos globales o activos globales, imágenes que deben ser accesibles para todas sus aplicaciones.

El primer paso es agregar Bootstrap a nuestra aplicación blog; abra el navegador, vaya a los documentos de Bootstrap 5 y presione el botón de descarga. Después de la descarga, debemos extraer el archivo y copiar estas carpetas JS y CSS de la carpeta extraída.

Descargar Bootstrap

Hemos creado una carpeta static dentro de la aplicación, y agregaremos otra carpeta dentro de esta carpeta static llamada blog. Podemos ver que tenemos un directorio /static/blog, y no es necesario que coloque sus archivos directamente en static porque se recomienda agregar una carpeta adicional dentro de él.

Si se pregunta por qué sucede esto, aunque técnicamente podríamos colocar todos nuestros estilos directamente en esta carpeta static en lugar de crear otra carpeta blog, sería una mala idea. Django elegirá el primer archivo estático.

Ahora pegaremos las carpetas copiadas dentro de la carpeta blog. Encuentra cuyo nombre coincide, y si tenemos el archivo estático con el mismo nombre en una aplicación diferente, Django no podría distinguir entre ellos.

Pegue las carpetas JS y CSS en la carpeta Blog

En palabras más simples, si tenemos archivos como estilo CSS y lo ponemos en static, y también tenemos este archivo en otras aplicaciones o proyectos, Django no podrá reconocer qué estilo CSS nos gustaría cargar. Esto es bueno para agregar un nombre extra para distinguir cuál queremos cargar.

Vamos a crear una carpeta llamada template dentro de la aplicación, y dentro de esta carpeta, creamos un archivo index.html. En este archivo, tenemos que decirle a Django que cargue nuestra variable estática usando este código Jinja {% load static %} y usemos la etiqueta <link/> para vincular nuestros archivos CSS de Bootstrap y escribir el siguiente código.

Vincular archivos CSS desde Bootstrap

Antes de ejecutar el proyecto, asegúrese de haber creado una función para la página de índice y establezca la URL en el archivo urls.py. Estos códigos son para demostración, y en su proyecto, el código puede cambiarse.

función para la página de índice

Ejecutemos el servidor; si abre Herramientas de desarrollo, navegue hasta Red, elija CSS y actualice la página, vemos que Bootstrap se ha cargado.

Herramientas de desarrollo

Agreguemos el componente card, copiemos su código de Bootstrap y péguelo dentro de nuestro archivo index.html.

Agregar componente de tarjeta

Tenemos nuestra card aquí, y nos falta una imagen, así que ahora agregaremos esta imagen, pero esta vez le mostraremos cómo agregar activos estáticos globales.

Salida de componentes de tarjeta

Si queremos que una imagen esté disponible para otras aplicaciones, creamos una carpeta static en nuestro directorio root y creamos una carpeta image dentro de la carpeta static. Guardemos una imagen dentro de la carpeta image.

Ahora tenemos que ir a nuestro archivo settings.py, hacer scroll hacia abajo, y ver que ya tenemos STATIC_URL y añadir una variable más, STATICFILES_DIRS. Este comando nos permite especificar más directorios static, estamos usando solo uno, pero a veces quieres tener más.

URL ESTÁTICA

Pasaremos una ruta de imagen al atributo src dentro del archivo index.html.

Pasar una ruta de imagen

Actualicemos la página y podremos ver que nuestra imagen se ha cargado. Esta imagen se carga desde nuestra carpeta root static, y tenemos los estilos CSS que se cargan desde nuestra aplicación.

Salida final

Salman Mehmood avatar Salman Mehmood avatar

Hello! I am Salman Bin Mehmood(Baum), a software developer and I help organizations, address complex problems. My expertise lies within back-end, data science and machine learning. I am a lifelong learner, currently working on metaverse, and enrolled in a course building an AI application with python. I love solving problems and developing bug-free software for people. I write content related to python and hot Technologies.

LinkedIn