Django community: Community blog posts RSS
This page, updated regularly, aggregates Community blog posts from the Django community.
-
Understanding async Python for the web
Recently Django 4.1 was released, and the thing most people seem interested in is the expanded async support. Meanwhile, for the last couple years the Python web ecosystem as a whole has been seeing new frameworks pop up which are fully async, or support going fully async, from the start. But this raises a lot of questions, like: just what is “async” Python? Why do people care about it so much? And is it really … Read full entry -
Django: excel output instead of csv
Ten years ago I made a time registration system for our company. Yeah, I know. Time registration systems are what everybody writes just for themselves instead of using one of the existing ones. Custom wishes: the same old excuses :-) But it was good fun to build and still is. At that time it was becoming popular to build the frontend in javascript. So I build it with pure, unashamed django templates. Custom template tags for formatting; formsets; the whole hog. After ten years, the website is still in heavy use, with only minimal work needed. Well, a bit too minimal: recently I really had to update the site as it was still running on python 3.5 and django 1.8. As it was pretty standard django, updating wasn't that hard. (I gave a talk about upgrading old django websites with docker recently, which might be interesting). The old CSV export Such a time registration system needs to output reports. Lots of different reports. I picked plain *.csv for that, as at the time there wasn't a handy xls exporter yet. The best one at the time needed you to install openoffice on the webserver, which wasn't ideal. Probably due to … -
Django News - DjangoCongress JP 2022 Call For Proposals - Aug 12th 2022
News PostgreSQL: PostgreSQL 14.5, 13.8, 12.12, 11.17, 10.22, and 15 Beta 3 Released! The PostgreSQL Global Development Group has released an update to all supported versions of PostgreSQL, including 14.5, 13.8, 12.12, 11.17, and 10.22, as well as the third beta release of PostgreSQL 15. postgresql.org Sponsored Ad Django GDPR Cookie Consent Highly customizable Django app to make your Django website compatible with GDPR Cookie law. gumroad.com Events DjangoCongress JP 2022 Call For Proposals (last call) DjangoCongress JP 2022 is on Saturday, November 12th, and their CFP is Friday, August 12th. google.com Articles How To Add a Text Editor To A Django Blog With Summernote Quickly add a powerful text editor to a Django blog app with Summernote. ctrlzblog.com How to find the number of items on the ORM queue using Django-Q A quick guide to exploring an ORM queue with the powerful Django-Q third-party package. djangoandy.com Class-based vs Function-based Views in Django A thorough article looking at the differences between Django's class-based views (CBV) and function-based views (FBV). testdriven.io Tutorials Integrating Mailchimp with Django A look at how to integrate Mailchimp with Django in order to handle newsletter subscriptions and send transactional emails. testdriven.io Videos Django-Sesame - Magic URLs … -
pip-tools Supports pyproject.toml
pip-tools is ready for modern packaging. -
Taking notes in interviews
Short summary for the index page here. -
Integrating Mailchimp with Django
This article looks at how to integrate Mailchimp with Django for newsletters and transactional emails. -
Django News - Django 4.1 Released - Aug 5th 2022
News Django 4.1 released!!! The release notes cover the profusion of new features in detail, but a few highlights are: An async interface to the ORM, and the ability to define async handlers on class-based views. The use of ORM-defined database constraints in model validation. Better form rendering accessibility and output style customization. djangoproject.com Django security releases issued: 4.0.7 and 3.2.15 This release fixes a file download vulnerability in FileResponse. We encourage all users of Django to upgrade as soon as possible. djangoproject.com Python 3.10.6 is available Python 3.10.6 is the newest major release of the Python programming language, and it contains many new features and optimizations. blogspot.com Sponsored Ad Django for Beginners/APIs/Professionals Level up your Django knowledge with Django for Beginners, Django for APIs, or Django for Professionals. Sample chapters are available to preview for free. learndjango.com Articles How to Combine Frontend and Backend (For Python Web Developers) A look at six different ways to combine back-end and front-end for Python developers with an analysis of the pros and cons for each approach. accordbox.com Django and SQL: Your Dynamic Duo for Scaling Databases An overview of managed hosting services for SQL, Redis, and other services. linode.com How to use … -
Django 4.1 Preview - Jeff Triplett (Ep 115 Replay)
Django 4.1 releasedJeff Triplett personal siteDjangoCon US Call for ProposalsDjango News newsletterawesome-djangoDjango for Professionals 4.0 UpdateDjangoX starter projectSupport the ShowThis podcast does not have any ads or sponsors. To support the show, please consider purchasing a book, signing up for Button, or reading the Django News newsletter. -
How to Combine Frontend and Backend (For Python Web Developers)
After reading, you will know the six solutions to combine the frontend and backend, and the pros and cons. -
Class-based vs Function-based Views in Django
This article looks at the differences between Django's class-based views (CBV) and function-based views (FBV). -
Announcing django-denied
I have paranoia when it comes to my Django app. I run a homeschool scheduling service called School Desk. My Software as a Service (SaaS) lets families plan their homeschool activities. Since the app deals with data about students (including my kids!), it’s important to me that every user’s data is protected, so that users can only view their own information. When I designed the system, I picked a shared Postgres schema (i. -
Django News - Python 3.11.0b5 and a new Wagtail CMS book - Jul 29th 2022
News Wagtail CMS in Action Kalob Taulien is the author of Learn Wagtail and many other great courses. His new book, Wagtail CMS in Action, is in progress and available for 40% off now. You can read the first two chapters for free. manning.com Python Insider: Python 3.11.0b5 is now available Python 3.11.0b5 is the last* beta for Python 3.11. blogspot.com Help us test system trust stores in Python If you're an IT or software team that uses Python along with corporate system certificates, an internal CA, or an internal PyPI repository: please read on to help improve Python. sethmlarson.dev Sponsored Ad Crunchy Bridge - Fully Managed Postgres as a Service crunchybridge.com Events Announcing the DjangoCon US 2022 Schedule! The DjangoCon US 2022 talk, tutorial, and sprint schedule is now out. Both in-person and online tickets are available. djangocon.us Articles Django Hosting & Deployment Options An up-to-date listing of Django specific deployment options. learndjango.com Lightweight Javascript Framework Review (For Django Developers) If you were curious about lightweight javascript frameworks, then this is the comprehensive post for you which includes: Phoenix LiveView Laravel Livewire Hotwire (Turbo, Stimulus) StimulusReflex Catalyst HTMX Unpoly Alpine.js Django Reactor Django Unicorn django-sockpuppet Tetra accordbox.com Python Package … -
Recursive Optional Dependencies in Python
One of my (slowly evaporating) reasons why I like putting packaging metadata into an executable setup.py is the ability to have optional dependencies that are combinations of others. As of pip 21.2, this is possible without running code. -
Extract a New Open Source Package - Building SaaS with Python and Django #140
In this episode, I pulled out code from homeschool application and started a new open source project for a portion that I thought would be useful for others. The new package, which I have called django-denied, is a way of handling authorization in your Django apps. -
Django: How to let user download a file
<![CDATA[ Django: How to let user download a file In this post, we will look at how to download a file with Django. Specifically how to let users download ImageField or FileField content. While there are a few ways to accomplish this, using FileResponse works really well. The most basic version is as simple as returning the FileResponse from your view like this: return FileResponse(model.image.open()) Here the image property is ImageField on a model. This won’t download the file; rather the browser will open it in a new tab in most cases. A similar thing will also happen for other file types that browsers can preview. To download it, we should specify the as_attachment parameter: return FileResponse(model.image.open(), as_attachment=True) The downloaded file will keep whatever filename used during upload (assuming you aren’t generating those yourself during save), which may not be optimal. Custom filename Wanting to “override” the filename was the main reason for this blog post. It turns out, you can pass any filename you wish to FileResponse, and that is the one browser will use when saving the file. Passing the filename parameter will allow you to offer descriptive filenames and possibly avoid embarrassing moments. return FileResponse(model.image.open(), as_attachment=True, filename="Export.png") … -
Django News - Django 4.1 release candidate 1 released - Jul 22nd 2022
News Django 4.1 release candidate 1 released Django 4.1 release candidate 1 is the final opportunity for you to try out the profusion of new features before Django 4.1 is released. djangoproject.com Distinguished Service Award Granted to Naomi Ceder Naomi Ceder, a longtime Python activist, and organizer has been recognized with the PSF’s Distinguished Service Award. blogspot.com Sponsored Ad Hiring Senior Software Engineer- Backend Python Engineer (Remote) Collins Aerospace is hiring a Remote Senior Backend Python Engineer to support the Connected Aviation Solutions organization. For expedited referrals/questions, please send resume/CV to jason.bowman@collins.com or mention Jason Bowman in your application submission. rtx.com Articles How To Test Django Models (With Examples) A beginner-friendly guide to testing models that includes good ideas around what to test: slugs, uniqueness, date added defaults, etc. ctrlzblog.com It’s Time to Say Goodbye to These Obsolete Python Libraries Forget about os.path, random, pytz, namedtuple and more and start using the latest and greatest Python libraries. plainenglish.io "Building the blog while flying it" Series Building the blog while flying it is a five-part series on adding Tailwind CSS to your projects. dev.to Tutorials The Great Continuum: Getting Started with the ButterCMS Django Starter Kit A tutorial on using the … -
Teacher Checklist Model - Building SaaS with Python and Django #139
In this episode, we created a new model for the teacher checklist feature that I recently added to my homeschool app. This new checklist model will enable users to filter out courses that appear on a teacher’s checklist. -
Django REST Framework (Ep5 Replay)
DRF Google GroupDjangoCon 2018 Talk: Finally Understand User Authentication in DRFDRF Official Documents: Authenticationdjango-cors-header packageSwagger vs OpenAPIAPI StarStarletteGraphQL vs RESTSPONSORING OPTIONSDRF SponsorsDjango Software FoundationSupport the ShowThis podcast does not have any ads or sponsors. To support the show, please consider purchasing a book, signing up for Button, or reading the Django News newsletter. -
Lightweight Javascript Framework Review (For Django Developers)
I will talk and compare lightweight javascript frameworks, and help you decide which one is the best for your Django project. -
Django News - Forms in Django 4.0+ - Jul 15th 2022
News Announcing Our DjangoCon US 2022 Talks! DjangoCon US is a hybrid in-person and online experience this year with talks that will be a mix of given live in-person and some will be online first. DjangoCon Europe talks are also being announced now via Twitter: https://twitter.com/DjangoConEurope djangocon.us Lead or organize a Development Sprint at DjangoCon US 2022! The last two days of DjangoCon US (this year, October 20-21) are devoted to Development Sprints. This blog post is targeted at current open source maintainers and contributors who are considering organizing or leading a Development Sprint at DCUS 2022. djangocon.us Python 3.11.0b4 released 3.11.0b4 is the fourth of five planned beta release previews. python.org PyPI to *soon* require 2FA and a Security Key Giveaway PyPI is implementing a 2FA requirement for critical projects, and distributing security keys to critical maintainers. pypi.org Sponsored Ad Mid/Senior Django Backend or Full-Stack Engineer at Boutique Digital Agency Type/Code designs and builds digital products and experiences, working with ambitious clients to bring powerful ideas to life. Our clients range from growing startups to cultural institutions to industry leaders, including Google, A24, MIT Media Lab, GE, MoMA, and Scholastic. We focus on conceiving, designing, and developing exceptional digital … -
Yes, I have opinions on your open source contributions
Recently the Python Package Index announced that they will be implementing new account-security policies, and hoo boy are some people ever worked up about it. This has already escalated to the author of at least one high-download-count package — one which was a dependency of pytest, thus likely to break a lot of people’s testing and CI right as the weekend started, always nice — deleting their package from PyPI out of anger and announcing … Read full entry -
Django News - Django security releases issued: 4.0.6 and 3.2.14 - Jul 8th 2022
News Django security releases issued: 4.0.6 and 3.2.14 A potential SQL injection was recently found and fixed with this security release. All users of Django should upgrade as soon as possible. djangoproject.com Python Software Foundation News: Board Election Results for 2022! Congratulations to everyone who won a seat on the PSF Board! blogspot.com Announcing Python Software Foundation Fellow Members for Q2 2022! 🎉 The PSF is pleased to announce its second batch of PSF Fellows for 2022! The list includes DSF Fellow Carlton Gibson. blogspot.com Quart is now a Pallets project A very positive development in the Flask ecosystem: Quart, an ASGI re-implementation of the Flask API has joined the Pallets organization and the long term aim is to merge Quart and Flask to bring ASGI support directly to Flask. palletsprojects.com Sponsored Ad Mid/Senior Django Backend or Full-Stack Engineer at Boutique Digital Agency Type/Code designs and builds digital products and experiences, working with ambitious clients to bring powerful ideas to life. Our clients range from growing startups to cultural institutions to industry leaders, including Google, A24, MIT Media Lab, GE, MoMA, and Scholastic. We focus on conceiving, designing, and developing exceptional digital experiences across a wide range of mediums. typecode.com … -
Panel interviews don't work
There’s a Right Way to conduct job interviews: one-on-one, with a single interviewer per interview session. If you need multiple interviewers (you probably do), schedule multiple sessions, each one-on-one. The alternate approach, panel interviews – having multiple interviewers in a session at once – is almost always a bad practice. It increases stress on the candidate, risks measuring the wrong things, and doesn’t lead to better results. Avoid panel interviews: they don’t work. -
htmx - Carson Gross (Ep95 Replay)
htmx@htmx_org on TwitterhyperscriptBig Sky Softwaredjango-htmxRapid Prototyping with Django, htmx, and Tailwind CSSSupport the ShowThis podcast does not have any ads or sponsors. To support the show, please consider purchasing a book, signing up for Button, or reading the Django News newsletter. -
Checking References: What to do if a reference check goes wrong
Most of the time, reference checks go very well: you only turn up information that confirms your decision to hire this candidate. But sometimes — maybe about 10% of the time — the reference will tell you something concerning. Here’s what to do if that happens.