Django 3 By Example – Antonio Mele

159,00

Description

If you want to learn the entire process of developing professional web applications with Python and Django, then this book is for you. In the process of building four professional Django projects, you will learn about Django 3 features, how to solve common web development problems, how to implement best practices, and how to successfully deploy your applications.In this book, you will build a blog application, a social image bookmarking website, an online shop, and an e-learning platform. Step-by-step guidance will teach you how to integrate popular technologies, enhance your applications with AJAX, create RESTful APIs, and set up a production environment for your Django projects.By the end of this book, you will have mastered Django 3 by building advanced web applications. Spis treści:PrefaceWho this book is forWhat this book coversGet the most out of this bookDownload the example code filesDownload the color imagesConventions usedGet in touchReviewsBuilding a Blog ApplicationInstalling DjangoCreating an isolated Python environmentInstalling Django with pipCreating your first projectRunning the development serverProject settingsProjects and applicationsCreating an applicationDesigning the blog data schemaActivating the applicationCreating and applying migrationsCreating an administration site for modelsCreating a superuserThe Django administration siteAdding models to the administration siteCustomizing the way that models are displayedWorking with QuerySets and managersCreating objectsUpdating objectsRetrieving objectsUsing the filter() methodUsing exclude()Using order_by()Deleting objectsWhen QuerySets are evaluatedCreating model managersBuilding list and detail viewsCreating list and detail viewsAdding URL patterns for your viewsCanonical URLs for modelsCreating templates for your viewsAdding paginationUsing class-based viewsSummaryEnhancing Your Blog with Advanced FeaturesSharing posts by emailCreating forms with DjangoHandling forms in viewsSending emails with DjangoRendering forms in templatesCreating a comment systemBuilding a modelCreating forms from modelsHandling ModelForms in viewsAdding comments to the post detail templateAdding the tagging functionalityRetrieving posts by similaritySummaryExtending Your Blog ApplicationCreating custom template tags and filtersCustom template tagsCustom template filtersAdding a sitemap to your siteCreating feeds for your blog postsAdding full-text search to your blogInstalling PostgreSQLSimple search lookupsSearching against multiple fieldsBuilding a search viewStemming and ranking resultsWeighting queriesSearching with trigram similarityOther full-text search enginesSummaryBuilding a Social WebsiteCreating a social website projectStarting your social website projectUsing the Django authentication frameworkCreating a login viewUsing Django authentication viewsLogin and logout viewsChanging password viewsResetting password viewsUser registration and user profilesUser registrationExtending the user modelUsing a custom user modelUsing the messages frameworkBuilding a custom authentication backendAdding social authentication to your siteRunning the development server through HTTPSAuthentication using FacebookAuthentication using TwitterAuthentication using GoogleSummarySharing Content on Your WebsiteCreating an image bookmarking websiteBuilding the image modelCreating many-to-many relationshipsRegistering the image model in the administration sitePosting content from other websitesCleaning form fieldsOverriding the save() method of a ModelFormBuilding a bookmarklet with jQueryCreating a detail view for imagesCreating image thumbnails using easy-thumbnailsAdding AJAX actions with jQueryLoading jQueryCross-site request forgery in AJAX requestsPerforming AJAX requests with jQueryCreating custom decorators for your viewsAdding AJAX pagination to your list viewsSummaryTracking User ActionsBuilding a follow systemCreating many-to-many relationships with an intermediary modelCreating list and detail views for user profilesBuilding an AJAX view to follow usersBuilding a generic activity stream applicationUsing the contenttypes frameworkAdding generic relations to your modelsAvoiding duplicate actions in the activity streamAdding user actions to the activity streamDisplaying the activity streamOptimizing QuerySets that involve related objectsUsing select_related()Using prefetch_related()Creating templates for actionsUsing signals for denormalizing countsWorking with signalsApplication configuration classesUsing Redis for storing item viewsInstalling RedisUsing Redis with PythonStoring item views in RedisStoring a ranking in RedisNext steps with RedisSummaryBuilding an Online ShopCreating an online shop projectCreating product catalog modelsRegistering catalog models on the administration siteBuilding catalog viewsCreating catalog templatesBuilding a shopping cartUsing Django sessionsSession settingsSession expirationStoring shopping carts in sessionsCreating shopping cart viewsAdding items to the cartBuilding a template to display the cartAdding products to the cartUpdating product quantities in the cartCreating a context processor for the current cartContext processorsSetting the cart into the request contextRegistering customer ordersCreating order modelsIncluding order models in the administration siteCreating customer ordersLaunching asynchronous tasks with CeleryInstalling CeleryInstalling RabbitMQAdding Celery to your projectAdding asynchronous tasks to your applicationMonitoring CelerySummaryManaging Payments and OrdersIntegrating a payment gatewayCreating a Braintree sandbox accountInstalling the Braintree Python moduleIntegrating the payment gatewayIntegrating Braintree using Hosted FieldsTesting paymentsGoing liveExporting orders to CSV filesAdding custom actions to the administration siteExtending the administration site with custom viewsGenerating PDF invoices dynamicallyInstalling WeasyPrintCreating a PDF templateRendering PDF filesSending PDF files by emailSummaryExtending Your ShopCreating a coupon systemBuilding the coupon modelApplying a coupon to the shopping cartApplying coupons to ordersAdding internationalization and localizationInternationalization with DjangoInternationalization and localization settingsInternationalization management commandsHow to add translations to a Django projectHow Django determines the current languagePreparing your project for internationalizationTranslating Python codeStandard translationsLazy translationsTranslations including variablesPlural forms in translationsTranslating your own codeTranslating templatesThe {% trans %} template tagThe {% blocktrans %} template tagTranslating the shop templatesUsing the Rosetta translation interfaceFuzzy translationsURL patterns for internationalizationAdding a language prefix to URL patternsTranslating URL patternsAllowing users to switch languageTranslating models with django-parlerInstalling django-parlerTranslating model fieldsIntegrating translations into the administration siteCreating migrations for model translationsAdapting views for translationsFormat localizationUsing django-localflavor to validate form fieldsBuilding a recommendation engineRecommending products based on previous purchasesSummaryBuilding an E-Learning PlatformSetting up the e-learning projectBuilding the course modelsRegistering the models in the administration siteUsing fixtures to provide initial data for modelsCreating models for diverse contentUsing model inheritanceAbstract modelsMulti-table model inheritanceProxy modelsCreating the content modelsCreating custom model fieldsAdding ordering to module and content objectsCreating a CMSAdding an authentication systemCreating the authentication templatesCreating class-based viewsUsing mixins for class-based viewsWorking with groups and permissionsRestricting access to class-based viewsManaging course modules and their contentsUsing formsets for course modulesAdding content to course modulesManaging modules and their contentsReordering modules and their contentsUsing mixins from django-bracesSummaryRendering and Caching ContentDisplaying coursesAdding student registrationCreating a student registration viewEnrolling on coursesAccessing the course contentsRendering different types of contentUsing the cache frameworkAvailable cache backendsInstalling MemcachedCache settingsAdding Memcached to your projectMonitoring MemcachedCache levelsUsing the low-level cache APICaching based on dynamic dataCaching template fragmentsCaching viewsUsing the per-site cacheSummaryBuilding an APIBuilding a RESTful APIInstalling Django REST frameworkDefining serializersUnderstanding parsers and renderersBuilding list and detail viewsCreating nested serializersBuilding custom API viewsHandling authenticationAdding permissions to viewsCreating viewsets and routersAdding additional actions to viewsetsCreating custom permissionsSerializing course contentsConsuming the RESTful APISummaryBuilding a Chat ServerCreating a chat applicationImplementing the chat room viewDeactivating the per-site cacheReal-time Django with ChannelsAsynchronous applications using ASGIThe request/response cycle using ChannelsInstalling ChannelsWriting a consumerRoutingImplementing the WebSocket clientEnabling a channel layerChannels and groupsSetting up a channel layer with RedisUpdating the consumer to broadcast messagesAdding context to the messagesModifying the consumer to be fully asynchronousIntegrating the chat application with existing viewsSummaryGoing LiveCreating a production environmentManaging settings for multiple environmentsUsing PostgreSQLChecking your projectServing Django through WSGIInstalling uWSGIConfiguring uWSGIInstalling NGINXThe production environmentConfiguring NGINXServing static and media assetsSecuring connections with SSL/TLSCreating an SSL/TLS certificateConfiguring NGINX to use SSL/TLSConfiguring your Django project for SSL/TLSRedirecting HTTP traffic over to HTTPSUsing Daphne for Django ChannelsUsing secure connections for WebSocketsIncluding Daphne in the NGINX configurationCreating a custom middlewareCreating a subdomain middlewareServing multiple subdomains with NGINXImplementing custom management commandsSummaryOther Books You May EnjoyIndex O autorze: Antonio Melé jest informatykiem, a projektami Django zajmuje się od 2006 roku. Opiekuje się hiszpańską społecznością użytkowników Django (django.es). Jest założycielem Zenx IT — firmy informatycznej tworzącej aplikacje sieciowe dla klientów z różnych sektorów gospodarki. Melé brał również udział w tworzeniu wielu startupów informatycznych.

E-Beletrystyka

dziewczyny na randki, brzechwa dzieciom dzieła wszystkie wiersze, wonder woman zwiastunka wojny, zamki i pałace dolnego śląska książka, psi patrol liberty, edena, zabawki mia i ja, peppa pi, asterix i wikingowie, lego traktor, koperta na dokumenty, farat, coben mow mi win, organizer na przyprawy do szuflady, jak nie spieprzyć życia swojemu dziecku

yyyyy

+0