bytes.cat

La wiki d'FP d'informàtica

Eines de l'usuari

Eines del lloc


Barra lateral

ASIX Administració de Sistemes Informàtics i Xarxes
Tots els mòduls del cicle
MP01 Implantació de sistemes operatius
Totes les UFs del modul
MP02 Gestió de bases de dades
Totes les UFs del modul
MP03 Programació bàsica
Totes les UFs del modul
MP04 Llenguatges de marques i sistemes de gestió d'informació
Totes les UFs del modul
MP05 Fonaments de maquinari
Totes les UFs del modul
MP06 Administració de sistemes operatius
Totes les UFs del modul
MP07 Planificació i administració de xarxes
Totes les UFs del modul
MP08 Serveis de xarxa i Internet
Totes les UFs del modul
MP09 Implantació d'aplicacions web
Totes les UFs del modul
MP10 Administració de sistemes gestors de bases de dades
Totes les UFs del modul
MP11 Seguretat i alta disponibilitat
Totes les UFs del modul
MP12 Formació i orientació laboral
Totes les UFs del modul
MP13 Empresa i iniciativa emprenedora
Totes les UFs del modul
MP14 Projecte
Totes les UFs del modul
DAM Desenvolupament d’aplicacions multiplataforma
Tots els mòduls del cicle
MP01 Sistemes informàtics
Totes les UFs del modul
MP02 Bases de dades
Totes les UFs del modul
MP03 Programació bàsica
Totes les UFs del modul
MP04 Llenguatges de marques i sistemes de gestió d'informació
Totes les UFs del modul
MP05 Entorns de desenvolupament
Totes les UFs del modul
MP06 Accés a dades
Totes les UFs del modul
MP07 Desenvolupament d’interfícies
Totes les UFs del modul
MP08 Programació multimèdia i dispositius mòbils
Totes les UFs del modul
MP09 Programació de serveis i processos
Totes les UFs del modul
MP10 Sistemes de gestió empresarial
Totes les UFs del modul
MP11 Formació i orientació laboral
Totes les UFs del modul
MP12 Empresa i iniciativa emprenedora
Totes les UFs del modul
MP13 Projecte de síntesi
Totes les UFs del modul
MPDual Mòdul Dual / Projecte
DAW Desenvolupament d’aplicacions web
Tots els mòduls del cicle
MP01 Sistemes informàtics
Totes les UFs del modul
MP02 Bases de dades
Totes les UFs del modul
MP03 Programació
Totes les UFs del modul
MP04 Llenguatge de marques i sistemes de gestió d’informació
Totes les UFs del modul
MP05 Entorns de desenvolupament
Totes les UFs del modul
MP06 Desenvolupament web en entorn client
Totes les UFs del modul
MP07 Desenvolupament web en entorn servidor
Totes les UFs del modul
MP08 Desplegament d'aplicacions web
Totes les UFs del modul
MP09 Disseny d'interfícies web
Totes les UFs del modul
MP10 Formació i Orientació Laboral
Totes les UFs del modul
MP11 Empresa i iniciativa emprenedora
Totes les UFs del modul
MP12 Projecte de síntesi
Totes les UFs del modul
SMX Sistemes Microinformàtics i Xarxes
Tots els mòduls del cicle
MP01 Muntatge i manteniment d’equips
Totes les UFs del modul
MP02 Sistemes Operatius Monolloc
Totes les UFs del modul
MP03 Aplicacions ofimàtiques
Totes les UFs del modul
MP04 Sistemes operatius en xarxa
Totes les UFs del modul
MP05 Xarxes locals
Totes les UFs del modul
MP06 Seguretat informàtica
Totes les UFs del modul
MP07 Serveis de xarxa
Totes les UFs del modul
MP08 Aplicacions Web
Totes les UFs del modul
MP09 Formació i Orientació Laboral
Totes les UFs del modul
MP10 Empresa i iniciativa emprenedora
Totes les UFs del modul
MP11 Anglès
Totes les UFs del modul
MP12 Síntesi
Totes les UFs del modul
CETI Ciberseguretat en Entorns de les Tecnologies de la Informació
Tots els mòduls del cicle
CiberOT Ciberseguretat en Entorns d'Operació
Tots els mòduls del cicle
django_bootstrap

Fent servir Bootstrap4 en la nostra aplicació Django

A l'hora de dissenyar aplicacions, una de les parts més importants és el disseny de la interfície gràfica. Django ens ofereix una arquitectura model-view-template, que permet entendre i dissenyar tota l'estructura de l'aplicació, però no ens dona cap eina extra en el disseny HTML. Existeixen frameworks, com ara Bootstrap, que faciliten aquesta feina. En aquest article veurem estratègies per integrar bootstrap en el nostre projecte Django.

Però, què és Bootstrap?

Bootstrap és un framework de desenvolupament web front-end àmpliament utilitzat que ofereix un conjunt de components, estils i funcionalitats predefinides per a la creació ràpida d'interfícies d'usuari atractives i responsives. Bootstrap permet als desenvolupadors centrar-se en la lògica de negoci de les seves aplicacions sense haver de dedicar temps significatiu a desenvolupar estils i components des de zero. Amb Bootstrap, els desenvolupadors poden aprofitar les classes CSS i els components de JavaScript predefinits per crear fàcilment un aspecte professional per a les seves aplicacions web. A més, Bootstrap és totalment personalitzable, el que significa que es pot adaptar per satisfer les necessitats específiques del projecte.

Començant amb Bootstrap

Per començar, primerament hem de vincular les biblioteques de Bootstrap a la nostra pàgina HTML. Això es pot fer afegint els següents enllaços als estils i als scripts de Bootstrap a l'encapçalament del document:

<!DOCTYPE html>
<html>
<head>
    <title>Exemple de Bootstrap</title>
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css">
    <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.min.js"></script>
</head>
<body>
    <!-- Aquí afegirem el contingut de la nostra pàgina web -->
</body>
</html>

Ara que hem vinculat correctament les biblioteques de Bootstrap, podem començar a utilitzar els seus components. Per exemple, afegim un títol i un botó a la nostra pàgina amb les classes Bootstrap:

<body>
    <div class="container">
        <h1>Exemple de Bootstrap</h1>
        <button class="btn btn-primary">Clic aquí</button>
    </div>
</body>

Això és només un exemple senzill de com utilitzar Bootstrap per generar una pàgina web des de zero. Amb Bootstrap, tenim accés a molts més components, classes i estils per personalitzar i millorar la nostra interfície d'usuari.

El layout en Bootstrap

El layout és una part fonamental de Bootstrap, ja que ens permet organitzar i estructurar els elements de la nostra pàgina web de manera senzilla i flexible. Amb Bootstrap, disposem de diferents classes i components per crear un layout adaptatiu i responsiu.

  • Contenidor: El primer element clau és el «container». Aquest component envolta tot el contingut de la pàgina i el centra horitzontalment a la pantalla.
  • Fileres i columnes: Bootstrap utilitza un sistema de graella basat en un sistema de 12 columnes. Podem utilitzar les classes «row» i «col» per organitzar els elements en fileres i assignar-los diferents amplades de columnes.
  • Amplades de columnes: Amb les classes «col-XX», on «XX» representa el nombre de columnes que volem ocupar, podem controlar l'amplada de les columnes en funció de les necessitats de la nostra pàgina.
  • Responsivitat: Bootstrap ens permet crear un layout responsiu mitjançant l'ús de les classes «col-sm-XX», «col-md-XX», «col-lg-XX» i «col-xl-XX». Això ens permet adaptar el layout en diferents dispositius, com ara tauletes i telèfons mòbils.
  • Classes d'offset: Amb les classes «offset-XX», podem desplaçar les columnes cap a la dreta per crear espais en blanc o marges entre els elements.
  • Centrat vertical: Utilitzant la classe «align-items-center» en una fila, podem centrar verticalment els elements continguts en ella.
  • Marges i premses: Bootstrap ofereix classes per afegir marges i premses als elements. Podem utilitzar les classes «m-XX» i «p-XX», on «XX» representa el nombre de píxels de marge o premsa que volem aplicar.
  • Navegació: Bootstrap proporciona components per crear fàcilment barres de navegació responsives, com ara la classe «navbar». Amb aquesta classe, podem crear una barra de navegació horitzontal o vertical amb diferents opcions de personalització.
  • Peus de pàgina: Podem utilitzar la classe «footer» per crear un peu de pàgina atractiu. Aquest component ens permet afegir informació addicional o enllaços a la part inferior de la pàgina.
  • Ample total: Si volem que un element ocupi tot l'ample disponible, podem utilitzar la classe «w-100».

En resum, el layout en Bootstrap ens permet crear un disseny flexible i adaptatiu per a la nostra pàgina web. Amb les classes i components proporcionats, podem estructurar el contingut, controlar l'amplada de les columnes, adaptar-nos a diferents dispositius i afegir marges i premses. Bootstrap ens facilita la creació d'un layout atractiu i responsiu sense la necessitat de codificar tot des de zero.

django-boostratp4

Django-Bootstrap4 és una biblioteca que proporciona una integració perfecta entre Django i Bootstrap4. Aquesta biblioteca ofereix una forma senzilla i eficient d'utilitzar els components, estils i funcionalitats de Bootstrap4 a les plantilles de Django.

Django-Bootstrap4 proporciona etiquetes de plantilla personalitzades i utilitats que permeten aprofitar al màxim les funcionalitats de Bootstrap4 en les nostres aplicacions web Django. Amb aquesta biblioteca, podem integrar fàcilment els estils i components de Bootstrap4 a les nostres plantilles Django, estalviant temps i esforç en el desenvolupament d'interfícies d'usuari atractives i responsives.

Instal·lació i configuració

Per començar a utilitzar Django-Bootstrap4, primerament hem d'instal·lar-lo al nostre entorn de desenvolupament. Podem fer-ho utilitzant l'eina de gestió de paquets de Python, pip. Executem la següent comanda al nostre terminal:

pip install django-bootstrap4

Un cop instal·lat, hem d'afegir 'bootstrap4' a la llista d'aplicacions instal·lades al fitxer de configuració de Django (settings.py):

INSTALLED_APPS = [
    ...
    'bootstrap4',
    ...
]

Aquesta configuració indica a Django que inclogui Django-Bootstrap4 en el nostre projecte.

Utilitzant Django-Bootstrap4 a les nostres plantilles

Un cop hem instal·lat i configurat correctament Django-Bootstrap4, podem començar a utilitzar-lo a les nostres plantilles Django. Django-Bootstrap4 proporciona una varietat d'etiquetes de plantilla personalitzades que ens permeten generar fàcilment els components de Bootstrap4.

Per exemple, si volem mostrar un botó a la nostra plantilla, podem utilitzar l'etiqueta de plantilla bootstrap_button de la següent manera:

{% load bootstrap4 %}
...
{% bootstrap_button "Feu clic aquí" button_type="primary" %}

En aquest exemple, estem utilitzant l'etiqueta de plantilla bootstrap_button per generar un botó amb el text «Feu clic aquí» i l'estil de botó primari de Bootstrap4.

A més dels components predefinits, Django-Bootstrap4 també ens permet personalitzar fàcilment els estils i aspectes dels components de Bootstrap4 utilitzant les opcions i arguments addicionals proporcionats per les etiquetes de plantilla.

Extra: recomanacions per a fer templates

En aquesta secció, explorarem les bones pràctiques per a la generació de plantilles amb Django utilitzant la llibreria Django-Bootstrap4 i el framework Bootstrap. Aprendrem com estructurar i organitzar les plantilles utilitzant una plantilla base, una plantilla amb la barra de navegació (navbar) i una plantilla amb el peu de pàgina (footer). Aquesta aproximació ens permetrà mantenir una estructura clara i reutilitzable per a les nostres plantilles Django.

Creació de la Plantilla Base

Comencem creant una plantilla base que servirà com a marc principal per a totes les altres plantilles. Aquesta plantilla base hauria d'incloure els elements comuns a totes les pàgines, com ara l'enllaç als arxius CSS i JS de Bootstrap, i el codi estructural bàsic. Utilitzarem la llibreria Django-Bootstrap4 per a integrar Bootstrap a la nostra plantilla.

<!-- plantilla_base.html -->
<!DOCTYPE html>
<html>
<head>
    <title>El meu lloc web</title>
    {% load static %}
    {% load bootstrap4 %}
    {% bootstrap_css %}
    {% bootstrap_javascript jquery=True %}
    {% bootstrap_messages %}
</head>
<body>
    {% include 'navbar.html' %}
    <div class="container">
        {% block content %}
        {% endblock %}
    </div>
</body>
</html>

Creació de la Plantilla amb la Barra de Navegació

A continuació, crearem una plantilla específica per a la barra de navegació (navbar). Aquesta plantilla hauria d'incloure el codi necessari per a generar la barra de navegació utilitzant les classes i components de Bootstrap. Podem utilitzar les etiquetes de plantilla de Django-Bootstrap4 per a generar fàcilment els elements de la barra de navegació, com ara els enllaços i els menús desplegables.

<!-- plantilla_navbar.html -->
{% block navbar %}
<nav class="navbar navbar-expand-lg navbar-light bg-light">
    <a class="navbar-brand" href="#">El meu lloc web</a>
    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
        <span class="navbar-toggler-icon"></span>
    </button>
    <div class="collapse navbar-collapse" id="navbarNav">
        <ul class="navbar-nav">
            <li class="nav-item active">
                <a class="nav-link" href="#">Inici</a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="#">Serveis</a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="#">Sobre Nosaltres</a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="#">Contacte</a>
            </li>
        </ul>
    </div>
</nav>
{% endblock %}

Creació de la Plantilla amb el Peu de Pàgina

Finalment, crearem una plantilla específica per al peu de pàgina (footer). Aquesta plantilla hauria d'incloure el codi necessari per a generar el peu de pàgina utilitzant les classes i components de Bootstrap. Podem afegir informació addicional, enllaços o fins i tot formularis de contacte al peu de pàgina.

<!-- plantilla_footer.html -->
{% block footer %}
<footer class="footer mt-auto py-3 bg-light">
    <div class="container">
        <span class="text-muted">© 2023 El meu lloc web. Tots els drets reservats.</span>
    </div>
</footer>
{% endblock %}

Herència de Plantilles

Un cop hàgim creat les plantilles base, de la barra de navegació i del peu de pàgina, podem utilitzar el concepte d'herència de plantilles de Django per a crear les pàgines específiques del nostre lloc web. Per exemple, per a crear una pàgina principal, podem heretar la plantilla base i afegir el contingut específic d'aquesta pàgina. Això ens permet reutilitzar el codi i mantenir una estructura consistent per a les nostres plantilles. Mostrem un exemple que utilitza també una etiqueta de django_bootstrap4 per a generar formularis amb classes bootstrap.

{% extends 'base.html' %}
{% load bootstrap4 %}
{% block content %}
<div class="container">
    <div class="row my-5">
        <div class="col-md-12">
            <form action="" method="post" class="form">
                {% csrf_token %}
                {% bootstrap_form form %}
                <button type="submit" class="btn btn-primary">Submit</button>
            </form>
        </div>
    </div>
</div>
{% endblock %}

Recursos

  • Documentació oficial de Bootstrap4: Link
  • Documentació oficial de la llibreria django_bootstrap4: Link
django_bootstrap.txt · Darrera modificació: 2023/06/27 15:26 per mikel_lopez_villarroya