{% extends 'doc/en/base.html' %} {% block content %}

Installation

Install BlitzWorkin console.
                        
pip install blitz_work
                        
                    

How to use.

  1. Include Blitz Work in settings.py.
                                    
    INSTALLED_APPS = [
        ...,
        ...,
        'blitz_work',
    ]
                                    
                                
  2. Create models.
                                    
    from django.db import models
    
    
    class Author(models.Model):
        name = models.CharField(verbose_name="Name", max_length=255)
        birth_date = models.DateField(verbose_name="Date of Birth")
    
    
        class Meta:
            verbose_name = "Author"
            verbose_name_plural = "Authors"
    
        def __str__(self):
            return self.name
    
    
    
    class Book(models.Model):
        title = models.CharField(verbose_name="Title", max_length=255)
        publication_date = models.DateField(verbose_name="Publication date")
        authors = models.ManyToManyField(Author,verbose_name="Authors")
    
    
        class Meta:
            verbose_name = "Book"
            verbose_name_plural = "Books"
    
        def __str__(self):
            return self.title
                                    
                                
  3. Create a template.
                                    
                {% verbatim %}
                {% extends 'blitz_base_offline.html' %}
                {% block main %}
                    <nav class="navbar navbar-expand-lg navbar-light bg-light">
                        <a class="navbar-brand" href="#">Test</a>
                        <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false" aria-label="Toggle navigation">
                            <span class="navbar-toggler-icon"></span>
                        </button>
                        <div class="collapse navbar-collapse" id="navbarNavDropdown">
                            <ul class="navbar-nav">
                            <li class="nav-item">
                                <a class="nav-link" href="{% url 'book/view' %}">Books</a>
                            </li>
                            <li class="nav-item">
                                <a class="nav-link" href="{% url 'author/view' %}">Authors</a>
                            </li>
                            </ul>
                        </div>
                    </nav>
                    {% block content %}{% endblock %}
                {% endblock %}
                {% endverbatim %}
                                    
                                
  4. Create the views.
                                    
    from Book.models import Author, Book
    from blitz_work.blitzcrud import BlitzCRUD
    
    
    class BookCRUD(BlitzCRUD):
        show_title = True
        show_caption = False
        caption_is_title = True
        extend_template = "base.html"
        data = Book
    
    class AuthorCRUD(BlitzCRUD):
        show_title = True
        show_caption = False
        caption_is_title = True
        extend_template = "base.html"
        data = Author
                                    
                                
  5. Include the URLs.
                                    
    from app.views import AuthorCRUD, BookCRUD
    from django.urls import path,include
    from blitz_work.blitzcrud import get_urls
    
    urlpatterns = [
        path('book/', include(get_urls(BookCRUD,"book"))),
        path('author/', include(get_urls(AuthorCRUD,"author"))),
    ]
                                    
                                
  6. Result.
    captura de pantalla
{% endblock content %}