Django 2 by example build powerful real-world applications using Django

Learn Django 2.0 with four end-to-end projects About This Book Learn Django by building real-world web applications from scratch Develop powerful web applications quickly using the best coding practices Integrate other technologies into your application with clear, step-by-step explanations and comp...

Descripción completa

Detalles Bibliográficos
Otros Autores: Mele, Antonio, author (author)
Formato: Libro electrónico
Idioma:Inglés
Publicado: Birmingham ; Mumbai : Packt 2018.
Edición:1st edition
Materias:
Ver en Biblioteca Universitat Ramon Llull:https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009631729906719
Tabla de Contenidos:
  • Cover
  • Title Page
  • Copyright and Credits
  • Dedication
  • Packt Upsell
  • Contributors
  • Table of Contents
  • Preface
  • Chapter 1: Building a Blog Application
  • Installing Django
  • Creating an isolated Python environment
  • Installing Django with pip
  • Creating your first project
  • Running the development server
  • Project settings
  • Projects and applications
  • Creating an application
  • Designing the blog data schema
  • Activating your application
  • Creating and applying migrations
  • Creating an administration site for your models
  • Creating a superuser
  • The Django administration site
  • Adding your models to the administration site
  • Customizing the way models are displayed
  • Working with QuerySet and managers
  • Creating objects
  • Updating objects
  • Retrieving objects
  • Using the filter() method
  • Using exclude()
  • Using order_by()
  • Deleting objects
  • When QuerySets are evaluated
  • Creating model managers
  • Building list and detail views
  • Creating list and detail views
  • Adding URL patterns for your views
  • Canonical URLs for models
  • Creating templates for your views
  • Adding pagination
  • Using class-based views
  • Summary
  • Chapter 2: Enhancing Your Blog with Advanced Features
  • Sharing posts by email
  • Creating forms with Django
  • Handling forms in views
  • Sending emails with Django
  • Rendering forms in templates
  • Creating a comment system
  • Creating forms from models
  • Handling ModelForms in views
  • Adding comments to the post detail template
  • Adding the tagging functionality
  • Retrieving posts by similarity
  • Summary
  • Chapter 3: Extending Your Blog Application
  • Creating custom template tags and filters
  • Creating custom template tags
  • Creating custom template filters
  • Adding a sitemap to your site
  • Creating feeds for your blog posts
  • Adding full-text search to your blog.
  • Installing PostgreSQL
  • Simple search lookups
  • Searching against multiple fields
  • Building a search view
  • Stemming and ranking results
  • Weighting queries
  • Searching with trigram similarity
  • Other full-text search engines
  • Summary
  • Chapter 4: Building a Social Website
  • Creating a social website project
  • Starting your social website project
  • Using the Django authentication framework
  • Creating a login view
  • Using Django authentication views
  • Login and logout views
  • Changing password views
  • Resetting password views
  • User registration and user profiles
  • User registration
  • Extending the user model
  • Using a custom user model
  • Using the messages framework
  • Building a custom authentication backend
  • Adding social authentication to your site
  • Authentication using Facebook
  • Authentication using Twitter
  • Authentication using Google
  • Summary
  • Chapter 5: Sharing Content in Your Website
  • Creating an image bookmarking website
  • Building the image model
  • Creating many-to-many relationships
  • Registering the image model in the administration site
  • Posting content from other websites
  • Cleaning form fields
  • Overriding the save() method of a ModelForm
  • Building a bookmarklet with jQuery
  • Creating a detail view for images
  • Creating image thumbnails using sorl-thumbnail
  • Adding AJAX actions with jQuery
  • Loading jQuery
  • Cross-Site Request Forgery in AJAX requests
  • Performing AJAX requests with jQuery
  • Creating custom decorators for your views
  • Adding AJAX pagination to your list views
  • Summary
  • Chapter 6: Tracking User Actions
  • Building a follower system
  • Creating many-to-many relationships with an intermediary model
  • Creating list and detail views for user profiles
  • Building an AJAX view to follow users
  • Building a generic activity stream application.
  • Using the contenttypes framework
  • Adding generic relations to your models
  • Avoiding duplicate actions in the activity stream
  • Adding user actions to the activity stream
  • Displaying the activity stream
  • Optimizing QuerySets that involve related objects
  • Using select_related()
  • Using prefetch_related()
  • Creating templates for actions
  • Using signals for denormalizing counts
  • Working with signals
  • Application configuration classes
  • Using Redis for storing item views
  • Installing Redis
  • Using Redis with Python
  • Storing item views in Redis
  • Storing a ranking in Redis
  • Next steps with Redis
  • Summary
  • Chapter 7: Building an Online Shop
  • Creating an online shop project
  • Creating product catalog models
  • Registering catalog models on the admin site
  • Building catalog views
  • Creating catalog templates
  • Building a shopping cart
  • Using Django sessions
  • Session settings
  • Session expiration
  • Storing shopping carts in sessions
  • Creating shopping cart views
  • Adding items to the cart
  • Building a template to display the cart
  • Adding products to the cart
  • Updating product quantities in the cart
  • Creating a context processor for the current cart
  • Context processors
  • Setting the cart into the request context
  • Registering customer orders
  • Creating order models
  • Including order models in the administration site
  • Creating customer orders
  • Launching asynchronous tasks with Celery
  • Installing Celery
  • Installing RabbitMQ
  • Adding Celery to your project
  • Adding asynchronous tasks to your application
  • Monitoring Celery
  • Summary
  • Chapter 8: Managing Payments and Orders
  • Integrating a payment gateway
  • Creating a Braintree sandbox account
  • Installing the Braintree Python module
  • Integrating the payment gateway
  • Integrating Braintree using Hosted Fields
  • Testing payments.
  • Going live
  • Exporting orders to CSV files
  • Adding custom actions to the administration site
  • Extending the admin site with custom views
  • Generating PDF invoices dynamically
  • Installing WeasyPrint
  • Creating a PDF template
  • Rendering PDF files
  • Sending PDF files by email
  • Summary
  • Chapter 9: Extending Your Shop
  • Creating a coupon system
  • Building the coupon models
  • Applying a coupon to the shopping cart
  • Applying coupons to orders
  • Adding internationalization and localization
  • Internationalization with Django
  • Internationalization and localization settings
  • Internationalization management commands
  • How to add translations to a Django project
  • How Django determines the current language
  • Preparing our project for internationalization
  • Translating Python code
  • Standard translations
  • Lazy translations
  • Translations including variables
  • Plural forms in translations
  • Translating your own code
  • Translating templates
  • The {% trans %} template tag
  • The {% blocktrans %} template tag
  • Translating the shop templates
  • Using the Rosetta translation interface
  • Fuzzy translations
  • URL patterns for internationalization
  • Adding a language prefix to URL patterns
  • Translating URL patterns
  • Allowing users to switch language
  • Translating models with django-parler
  • Installing django-parler
  • Translating model fields
  • Integrating translations in the administration site
  • Creating migrations for model translations
  • Adapting views for translations
  • Format localization
  • Using django-localflavor to validate form fields
  • Building a recommendation engine
  • Recommending products based on previous purchases
  • Summary
  • Chapter 10: Building an E-Learning Platform
  • Setting up the e-learning project
  • Building the course models
  • Registering the models in the administration site.
  • Using fixtures to provide initial data for models
  • Creating models for diverse content
  • Using model inheritance
  • Abstract models
  • Multi-table model inheritance
  • Proxy models
  • Creating the content models
  • Creating custom model fields
  • Adding ordering to module and content objects
  • Creating a CMS
  • Adding an authentication system
  • Creating the authentication templates
  • Creating class-based views
  • Using mixins for class-based views
  • Working with groups and permissions
  • Restricting access to class-based views
  • Managing course modules and content
  • Using formsets for course modules
  • Adding content to course modules
  • Managing modules and contents
  • Reordering modules and contents
  • Using mixins from django-braces
  • Summary
  • Chapter 11: Rendering and Caching Content
  • Displaying courses
  • Adding student registration
  • Creating a student registration view
  • Enrolling in courses
  • Accessing the course contents
  • Rendering different types of content
  • Using the cache framework
  • Available cache backends
  • Installing Memcached
  • Cache settings
  • Adding Memcached to your project
  • Monitoring Memcached
  • Cache levels
  • Using the low-level cache API
  • Caching based on dynamic data
  • Caching template fragments
  • Caching views
  • Using the per-site cache
  • Summary
  • Chapter 12: Building an API
  • Building a RESTful API
  • Installing Django REST framework
  • Defining serializers
  • Understanding parsers and renderers
  • Building list and detail views
  • Creating nested serializers
  • Building custom views
  • Handling authentication
  • Adding permissions to views
  • Creating view sets and routers
  • Adding additional actions to view sets
  • Creating custom permissions
  • Serializing course contents
  • Summary
  • Chapter 13: Going Live
  • Creating a production environment.
  • Managing settings for multiple environments.