CARVIEW |
Select Language
HTTP/2 200
server: nginx
content-type: text/html; charset=utf-8
content-language: en
x-frame-options: SAMEORIGIN
x-content-type-options: nosniff
referrer-policy: same-origin
cross-origin-opener-policy: same-origin
expires: Sat, 11 Oct 2025 11:51:05 GMT
cache-control: max-age=300
strict-transport-security: max-age=31536000; includeSubDomains; preload
permissions-policy: interest-cohort=()
x-xss-protection: 1; mode=block
access-control-allow-origin: https://code.djangoproject.com
content-encoding: gzip
via: 1.1 varnish, 1.1 varnish
accept-ranges: bytes
age: 143
date: Sat, 11 Oct 2025 11:48:27 GMT
x-served-by: cache-fra-etou8220142-FRA, cache-bom-vanm7210081-BOM
x-cache: HIT, MISS
x-cache-hits: 1, 0
x-timer: S1760183308.741511,VS0,VE125
vary: Accept-Language, Accept-Encoding
content-length: 14928
Django Community | Django
Skip to main content
Building the Django Community for 20 years, 2 months. Come join us!
Django community: RSS
This page, updated regularly, aggregates Community blog posts from the Django community.
-
Django News - 🥧 Python 3.14 is released! - Oct 10th 2025
Posted on Oct. 10, 2025 at 10 a.m. by Django News RSSNews Python 3.14.0 (final) is here! Python 3.14.0 release offers new free-threaded support, deferred annotations, template string literals, multiple interpreters, and performance optimizations beneficial to Django backends. blogspot.com Python Insider: Python 3.13.8 is now available Python 3.13.8 releases approximately 200 bug fixes, build improvements, and documentation updates for enhanced stability and performance, benefiting Django projects and upgrades. blogspot.com Python 3.x security release This week we saw security releases for every active Python version: Python 3.9.24, Python 3.10.19, Python 3.11.14, and Python 3.12.12. Django Newsletter Updates to Django Today 'Updates to Django' is presented by Pradhvan from Djangonaut Space!🚀 Last week we had 13 pull requests merged into Django by 7 different contributors - including a first-time contributor! Congratulations to Chaitanya Keyal for having their first commits merged into Django - welcome on board! 🎉 This week's Django highlights 🌟 Django dropped support for PostgreSQL 14 and PostGIS 3.1, completing the transition to newer database versions as these older releases reach end-of-life. QuerySet.values_list(flat=True) without a field is now deprecated, clarifying the API by requiring explicit field specification rather than relying on implicit primary key selection. Documented unique constraint requirement when migrating ManyToManyField to use a through model, helping developers avoid subtle … -
Django: Introducing django-http-compression
Posted on Oct. 9, 2025 at 11 p.m. by Adam Johnson RSSHTTP supports response compression, which can significantly reduce the size of responses, thereby decreasing bandwidth usage and load times for users. It’s a cheap and valuable technique for improving website performance. Lighthouse, Google’s web performance auditing tool, recommends enabling compression where it is not enabled, presenting estimated bandwidth savings. For example, on one client site, it estimated a 64KiB (65%) saving on a dashboard page: For Django projects, many deployment situations will let you enable response compression at the web server or CDN level. But there are still cases where you may not have that option or it’s inconvenient, such as with some PaaS providers. In such situations, you can use Django’s built-in GZipMiddleware to use Gzip compression—pop it in MIDDLEWARE, above any middleware that modifies the response content: MIDDLEWARE = [ ..., "django.middleware.gzip.GZipMiddleware", ..., ] …and hey presto, instant site-wide compression! Browsers and HTTP clients have supported Gzip for decades, so practically all visitors will benefit. Django’s Gzip support dates back to 2005, before its 1.0 release. Since then, two newer compression algorithms have been developed and achieved wide support: Brotli and Zstandard. Both offer better compression ratios than Gzip, with Zstandard even matching Gzip on speed. Python 3.14, … -
Django & REST & APIs
Posted on Oct. 8, 2025 at midnight by Software Crafts RSSWhile lamenting that I'm not in Spain for Django on the Med (but do have other events to go to), I have been reading the recent forum thread about Django & REST and it has provoked some thoughts, some of which I shared directly in the thread, but I hope to expand on them here and likely in another post as I'm not quite done prototyping my ideas. First there is some obvious core work that needs to be done: Document the current options as a how-to/guide for building with Django and some measure of guidance for how to choose perhaps. Personally I would be happy with getting an AI agent to do a first pass of a page like this. Get the in progress tickets finished. That mostly being modernising content negotiation in the request object. Once we have those in place we are a starting point to focus the main components that make up an API in Django. Primarily it's as follows: URLs or groups of URLs Views or groups of URLs Serializing data & deserializing data. Most of the focus has mostly been on the serialization component, in terms of which option to pick to include or … -
Run Django tests using PostgreSQL in GitHub Actions
Posted on Oct. 7, 2025 at midnight by Loopwerk RSSDid you know that you can run unit tests for your Django app, in GitHub Actions, using PostgreSQL? I’m a little bit ashamed to admit that I had absolutely no idea until today. I really thought that I was forced to run my unit tests using Sqlite. And while most of the time that works perfectly fine, there are times when your Django app is using PostgreSQL-exclusive features and having to work around that in CI becomes a real pain. It’s also just a good idea to stay as close to the production setup as possible when running your tests. Turns out that it’s actually really simple to use a real PostgreSQL database in GitHub Actions! Here’s a minimal example workflow that installs your dependencies, starts a PostgreSQL 15 service, and runs your Django tests, all inside CI: .github/workflows/tests.yml name: Unit tests on: push: branches: ["develop"] pull_request: branches: ["develop"] env: DEBUG: "True" DATABASE_URL: "postgres://postgres:postgres@postgres:5432/test_soundradix" SECRET_KEY: "unit-tests" jobs: build: runs-on: ubuntu-latest services: postgres: image: postgres:15 env: POSTGRES_PASSWORD: postgres POSTGRES_DB: test_soundradix options: >- --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 strategy: max-parallel: 4 steps: - uses: actions/checkout@v3 - uses: astral-sh/setup-uv@v3 - run: uv python install - run: uv sync --group dev … -
DjangoCon US 2025: A Celebration of Community, Code and 20 Years of Django
Posted on Oct. 6, 2025 at 2 p.m. by Caktus Consulting Group RSSCelebrating 20 years of Django DjangoCon US 2025 was a milestone year for the community, as we gathered in Chicago to celebrate 20 years of Django. Attendees from around the world came together to learn about the latest developments, share their work, and strengthen the bonds that make DjangoCon such a special event. Caktus was well-represented once again, with our team contributing as organizers, speakers, and active participants throughout the week. -
Django: one ORM to rule all databases 💍
Posted on Oct. 5, 2025 at 10 p.m. by PauLoX.net RSSComparing the Django ORM support across official database backends, so you don’t have to learn it the hard way. -
My DjangoCon US 2025
Posted on Oct. 4, 2025 at 10 p.m. by PauLoX.net RSSA summary of my experience at DjangoCon US 2025 told through the posts I published on Mastodon during the conference. -
Resurrecting the Original Django Book
Posted on Oct. 4, 2025 at 1:56 a.m. by William S. Vincent RSSThe original DjangoBook is now online again at DjangoBook.com -
Django News - Wagtail Space 2025 - Oct 3rd 2025
Posted on Oct. 3, 2025 at 10 a.m. by Django News RSSNews Django security releases issued: 5.2.7, 5.1.13, and 4.2.25 Django patches high-severity SQL injection and low-severity directory traversal vulnerabilities across QuerySet methods and archive extraction in security updates for Django 5.2, 5.1, and 4.2. djangoproject.com Keyboard shortcuts in Django via GSoC 2025 Somehow we missed including this earlier in September, but it's a lovely writeup of a Google Summer of Code project to add keyboard shortcuts to the admin interface. djangoproject.com Phishing attacks with new domains likely to continue A new phishing campaign targeting PyPI users using similar tactics to previous campaigns. pypi.org Welcome to Session 5 Teams Session 5 launches with six teams of contributors advancing projects across the Django ecosystem, including Django, djangoCMS, Wagtail, Django Debug Toolbar, and Django Packages. djangonaut.space Updates to Django Today 'Updates to Django' is presented by Pradhvan from Djangonaut Space!🚀 Last week we had 20 pull requests merged into Django by 13 different contributors - including 3 first-time contributors! Congratulations to prepa24, Samriddh Tripathi, and Ruhm for having their first commits merged into Django - welcome on board! 🎉 This week's Django highlights 🌟 QuerySet.in_bulk() now works after .values() or .values_list(), making it easier to fetch dictionary mappings from filtered querysets without needing … -
Django Fellow - Jacob Walls
Posted on Oct. 1, 2025 at 11 a.m. by DjangoChat RSS🔗 LinksJacob’s websiteDjango 6.0 Release NotesWhat skills does SWE-bench Verified evaluate?Django on the Me📦 Projectsdjango-watchfilesdjango-admin-keyshortcutsdjango-sql-migrate-deux📚 BooksSoftware Design by Example - Greg WilsonAmerica Day by Day - Simone de BeauvoirThe Hunting Gun - Yashushi Inoue🎥 YouTubeYouTube Channel: @djangochatSponsorThis episode was brought to you by HackSoft, your development partner beyond code. From custom software development to consulting, team augmentation, or opening an office in Bulgaria, they’re ready to take your Django project to the next level! -
I Miss Tabs vs Spaces... And Other AI Musings
Posted on Oct. 1, 2025 at 1:56 a.m. by William S. Vincent RSSA written guide to my DjangoCon US talk on deploying machine learning models with Django. -
Doing community for the long haul
Posted on Oct. 1, 2025 at midnight by Software Crafts RSSFor some reason I have been putting off writing this one, perhaps because it feels vunerable to me in this (public) context of my life. That said I am pushing through as I think there is some interesting content and idea's to be had below. The content below started to form in my head from some questions posed by Tim Schilling in the Djangonaut Space Discord space. Session 5 has just started which is great, but his question was what to do around those that don't get selected? My initial response to this was maybe something along the lines of mastermind groups that are fairly common in other communities, for me I have seen it within founder circles where those at a similar level come together to help each other out. What's key for both Djangonaut Space and mastermind's is that they are small groups. Carlton highlighted small groups in his DjangoCon Europe talk this year, especially in regards to trusting others. I have seen this with Moderators and Helpers in the Discord server, the smaller space allows for increased trust, which in turn allows for other conversations to happen that are not purely about Django, they are about our … -
Per-object Permissions for Elasticsearch Lists in Django Websites
Posted on Sept. 27, 2025 at noon by DjangoTricks RSSThe Challenge Elasticsearch improves the performance of filterable and searchable list views, reducing load times from several seconds to about half a second. It stores list view details from various relations denormalized in a JSON-like structure. In the Django-based system I’ve been working on, we use django-guardian to set per-object permissions for users or roles managing various items. This means you not only need to check whether a user has general permission to view, change, or delete a type of object, but also whether they have permission to access specific objects. A major challenge arises when using Elasticsearch for authorized views based on user permissions – how can we check permissions without slowing down the listing too much? Things We Considered Here are a few options I compared: Check all object UUIDs the user can access via django-guardian, then pass those UUIDs to the Elasticsearch search query. This might work with fewer than 100 items, but it doesn’t scale. Filter the Elasticsearch list first, and then check each item’s UUID against user permissions. With thousands of search results, permission checks become too slow. If I check permissions only for the first page, pagination data becomes inaccurate. Create a user-permission Elasticsearch … -
Django News - django.tasks exists - Sep 26th 2025
Posted on Sept. 26, 2025 at 10 a.m. by Django News RSSNews Django Fellow Sarah Boyce - Maternity leave announcement At the end of this month, Sarah will be stepping away from her role as Django Fellow for some time while out on maternity leave. djangoproject.com PostgreSQL 18 Released! PostgreSQL 18 delivers major performance and usability improvements, including a new asynchronous I/O system with up to 3× faster reads, less disruptive major version upgrades, and smarter indexing and query optimizations. postgresql.org Nanodjango.dev is live! A dedicated website for the nanodjango project that puts full Django in a single file. Automatically convert it to a full project. nanodjango.dev Updates to Django Today, "Updates to Django" is presented by Raffaella from Djangonaut Space ! 🚀 Last week we had 28 pull requests merged into Django by 19 different contributors - including 5 first-time contributors! Congratulations to jrsenthil-kumar2312, Saksham Jain, Caitlin B, 윤수진, and DaniF for having their first commits merged into Django - welcome on board! News for 6.0: Django now includes a built-in Tasks framework for running code outside the HTTP request–response cycle. (ticket: 35859 ) The new Lexeme <django.contrib.postgres.search.Lexeme> expression for full text search provides fine-grained control over search terms. News for 6.1: The class django.contrib.contenttypes.fields.GenericForeignKey now uses a separate descriptor … -
Django: Introducing django-watchfiles, for more efficient runserver autoreloading
Posted on Sept. 21, 2025 at 11 p.m. by Adam Johnson RSSDjango’s runserver automatically reloads when you change Python files. Without this autoreloading feature, you’d need to manually restart the server every time you made a code change. However, the default autoreloading implementation is inefficient, as it constantly polls the filesystem for changes. The alternative to polling is to use your operating system’s file watching APIs, which can efficiently notify the server when files change. Using this technique saves CPU and power, while making reloads faster and more reliable—all in all, a big win! But since these APIs are OS-specific, it’s best for Django to use a cross-platform library that wraps them. Django provides an integration with Facebook’s Watchman, which works as a file watching server. While I appreciate this integration, it does require installing, running, and maintaining an extra tool (Watchman itself). Additionally, the Python client library for Watchman, pywatchman, seems to be rather unmaintained. Most notably, it was broken on Python 3.10, and the fix was not released for 2.5 years, after Python 3.12 was released. I promoted the Watchman integration on this blog and in the first version of Boost Your Django DX, which came out just after Python 3.10 was released. But since pywatchman was broken, my … -
Django News - Django 6.0 Feature Freeze - Sep 19th 2025
Posted on Sept. 19, 2025 at 10 a.m. by Django News RSSNews Django 6.0 alpha 1 released The Django 6.0 feature freeze is upon us. This is a chance to try it out now and report any bugs or issues before the public release in December. djangoproject.com Nominate a Djangonaut for the 2025 Malcolm Tredinnick Memorial Prize Nominations for the annual Malcolm Tredinnick Memorial Prize are now open. Malcolm was an early core contributor to Django and had a huge influence on Django as we know it today. Besides being knowledgeable he was also especially friendly to new users and contributors. He exemplified what it means to be an amazing Open Source contributor. djangoproject.com A former Djangonaut is called a Star! Hear directly from Stars, mentors, and others in the Djangonaut Space community as they share their experiences and perspectives. djangonaut.space DjangoCon US: Call for Venue Proposals 2027-28 We’re wrapping up DjangoCon US 2025, so it’s time to think about 2027 and possibly 28! DjangoCon US 2026 is tentatively planning to return to Chicago. Where will we be the following year or two? We need your help in making that decision! defna.org Announcing the 2025 PSF Board Election Results! Congratulations to the two new and two returning Board members who have … -
Don't Let Search Take You Down
Posted on Sept. 18, 2025 at 8:54 p.m. by Caktus Consulting Group RSSTwice in the last few months we’ve had to deal with Django production site issues caused by inefficient search queries. -
Mercurial Mirror For Django 6.0 Branch
Posted on Sept. 18, 2025 at 10:21 a.m. by Thomas Capricelli RSSI usually create a new mirror when Django releases a Beta, but it will happen sooner this time : the 6.0 alpha 1 was just released, and I’ve set up the mirror for 6.0. For the record, those mirrors are read-only, and aimed at production (aka “I want an easy way to update Django on […] -
DjangoCon US 2025 Recap
Posted on Sept. 18, 2025 at 2:15 a.m. by DjangoChat RSS🔗 LinksDjango on the MeDjango for AI talk notesDjangoCon US 2025 Recap:Talk Python: Django’s 20th Birthday Paneluv Livestream with Michael KennedyDjango Roadmap Session January 2024📦 ProjectsNanodjangoDj-liteDjango Formset📚 BooksEmpire of AI by Karen HaoRefactoring to Rust by Lily Mara & Joel Holmes🎥 YouTubeYouTube Channel: @djangochatSponsorThis episode was brought to you by HackSoft, your development partner beyond code. From custom software development to consulting, team augmentation, or opening an office in Bulgaria, they’re ready to take your Django project to the next level! -
Full text search with Django and SQLite
Posted on Sept. 15, 2025 at 11:58 a.m. by Timo Zimmermann RSSOne thing I wanted to add to this blog for a long time was full text search. Content is steadily increasing and sometimes I have a hard time finding the exact right post to link to when writing a new post. My wife was also complaining that she could never find the post about backups for artists when she wanted to link it. So what a better way to spend a few hours of my vacation than to add full text search functionality. Usually when adding search to a system people eye ElasticSearch. A monstrosity I had my fair share of "fun" with and something I do not want to touch if I can avoid it. Avid Postgres users might lean on PostgreSQLs excellent full text search and vectorisation options. This blog is running on Django and SQLite and there is no chance I would add either of these two to the stack for "just a blog". SQLite has an extension for full text search. Technically multiple, but we are using FTS5. Per documentation we need a virtual table and fill it with our data. For the table we add the title of the post and its raw content. A … -
uv Livestream with Michael Kennedy
Posted on Sept. 15, 2025 at 5:56 a.m. by William S. Vincent RSSAn in-depth look at the uv package manager, why it is so popular, and how to use it today. -
DjangoCon US 2025 Recap
Posted on Sept. 15, 2025 at 5:56 a.m. by William S. Vincent RSSThoughts on a fun week in Chicago, favorite talks, sprints, and more. -
Django views versus the Zen of Python
Posted on Sept. 14, 2025 at midnight by Loopwerk RSSA while ago, I wrote about how I write Django views, arguing that the base View class hits the sweet spot between the simplicity of function-based views and the often-overwhelming complexity of generic class-based views. The response to that article made it clear that I’m not alone in this thinking. It got me wondering: why does this approach feel so right? The answer, I believe, lies in the guiding principles of Python itself. The Zen of Python isn’t just a collection of clever aphorisms; it’s a framework for writing clear, maintainable, and effective code. When we look at Django’s view layer through this lens, it becomes apparent where things start to go astray. Here are all the ways that Django’s views (especially the generic class-based kind) break the Zen of Python. “There should be one - and preferably only one - obvious way to do it.” Python developers cherish this principle. It promotes consistency and readability. Yet, when it comes to something as fundamental as rendering “Hello, world!” in Django, the options are dizzying. Just look at the many ways to accomplish this simple task: The simple function: from django.http import HttpResponse def hello_world(request): return HttpResponse("Hello, world!") The base View … -
LLMs are making me a better programmer...
Posted on Sept. 12, 2025 at noon by 406.ch: Posts about Django RSSLLMs are making me a better programmer… I’m still undecided about LLMs for programming. Sometimes they are very useful, especially when working on a clearly stated problem within a delimited area. Cleaning the code up afterwards is painful and takes a long time though. Even for small changes I’m unsure if using LLMs is a way to save (any) resources, be it time, water, energy or whatever. They do help me get started, and help me be more ambitious. That’s not a new idea. Simon Willison wrote a post about this in 2023 and the more I think about it or work with AI the more I think it’s a good way to look at it. A recent example which comes to mind is writing end to end tests. I can’t say I had a love-hate relationship with end to end testing, it was mostly a hate-hate relationship. I hate writing them because it’s so tedious and I hate debugging them because of all the timing issues and the general flakyness of end to end testing. And I especially hate the fact that those tests break all the time when changing the code, even when changes are mostly unrelated. When … -
Django News - Djangonaut Space 2025 Session 5 - Sep 12th 2025
Posted on Sept. 12, 2025 at 10 a.m. by Django News RSSNews Djangonaut Space 2025 Session 5 Applications Applications are open until September 14 end of day. This is your last chance to apply if interested! djangonaut.space Getting Started With Open Source Through Community Events Django community events empower developers to gain practical open source contribution experience via office hours, sprints, testathons, and live PR review sessions boosting personal growth. djangoproject.com DjangoCon US: Call for Venue Proposals 2027-28 So you want your city to host DjangoCon US? Hurrah! We’re delighted by your interest. Here’s what you need to know, and what we need to know, to consider your proposal. defna.org Django Software Foundation DSF at EuroPython 2025: Celebrating 20 years of Django EuroPython 2025 featured DSF's vibrant booth and collaborative sprints to commemorate Django's 20th anniversary, uniting contributors and strengthening community ties. djangoproject.com Updates to Django Today, "Updates to Django" is presented by Raffaella from Djangonaut Space! 🚀 Last week we had 12 pull requests merged into Django by 11 different contributors - including 1 first-time contributor! Congratulations to Ronan LE HAY for having their first commits merged into Django - welcome on board! In Django 6.0, the DEFAULT_AUTO_FIELD setting now defaults to BigAutoField, completing the transition that began in Django …
Additional Information
Support Django!
More Help
- Frequently Asked Questions
- The FAQ answers many common questions
- r/Django Subreddit
- News and links on Reddit
- StackOverflow
- Search community answers
- #django IRC Channel
- Chat with other Django users like it's 1999
Dive In
- Ticket System
- View and update bug reports
- Development Dashboard
- Statistics about Django development
- django-updates Mailing List
- Get updated for each code and ticket change
More Links
- Django Packages
- Find third-party packages to supercharge your project
- Django-powered Sites
- Add your site to the list
- Django Badges
- Show your support (or wish longingly)
- Django Logos
- Download official logos