https://docs.djangoproject.com/en/3.2/ref/contrib/staticfiles/#django.contrib.staticfiles.storage.ManifestStaticFilesStorage

Are you using this?  basically, it converts static asset filenames from 
`styles.css` to `styles.2932y382.css` and other random-seeming hashes in 
the filename.  Useful for cache-busting.
On Monday, October 25, 2021 at 3:38:49 AM UTC-4 Bharat Chauhan wrote:

> Hi,
>
> That won't work because this is related to static files and how browsers 
> implement caching for static files.
>
> This is a good article on this: 
> https://engineering.fb.com/2017/01/26/web/this-browser-tweak-saved-60-of-requests-to-facebook/
>
> Basically, browsers won't revalidate the cache unless the server also 
> sends a `Cache-Control` header. Which Django's built-in static view doesn't 
> do. That means, if you make changes to CSS/JS files during development, 
> browsers will serve stale version unless the cache is disabled.
>
> On Saturday, October 23, 2021 at 1:37:39 PM UTC+5:30 roxane...@gmail.com 
> wrote:
>
>> Hi
>>
>> Wouldn't the setting "CACHE_MIDDLEWARE_SECONDS" do what you are looking 
>> for ?
>>
>> Regards,
>>
>>
>> Le vendredi 22 octobre 2021 à 15:53:44 UTC+2, Bharat Chauhan a écrit :
>>
>>> Really, no one is interested in making the developer experience a little 
>>> less frustrating?
>>>
>>> It's literally two lines of code and will eventually save hours trying 
>>> to refresh the cache by opening dev tools, 
>>> which, btw, isn't even possible on mobile.
>>>
>>> Besides, Django's dev server is not meant to be used in production. So 
>>> why even care about caching?
>>> On Tuesday, September 28, 2021 at 10:49:06 AM UTC+5:30 laym...@gmail.com 
>>> wrote:
>>>
>>>> I'm +1 on this.
>>>>
>>>> In my experience teaching Django at university, this always confuses 
>>>> students: "why are my changes not reflected in the browser?"
>>>>
>>>> Having static files caching disabled when DEBUG=True would be very 
>>>> useful. Thanks for bringing this up!
>>>>
>>>> Sage
>>>>
>>>> On Monday, 27 September 2021 at 20:17:35 UTC+7 Bharat Chauhan wrote:
>>>>
>>>>> Hello,
>>>>>
>>>>> I recently opened a ticket (#33148 
>>>>> <https://code.djangoproject.com/ticket/33148>) but it was closed as 
>>>>> duplicate of (#32891 <https://code.djangoproject.com/ticket/32891>) 
>>>>> which itself is marked "wontfix".
>>>>>
>>>>> The reasoning provided by Carlton Gibson for this is:
>>>>>
>>>>> > *I don't think this is the right approach. As far as I can see the 
>>>>> browser behaviour is correct and as desired, s**erving static assets 
>>>>> from the browser cache when possible.*
>>>>>
>>>>> At least while DEBUG is True, I see no harm in setting `Cache-Control: 
>>>>> max-age=0` header.
>>>>>
>>>>> This will allow browsers to cache the files while forcing them to 
>>>>> revalidate cache using the If-Modified-Since header. This way, Django can 
>>>>> serve updated files if they get modified or return a 304 response in 
>>>>> which 
>>>>> case browsers will use the cached file (conforming to Carlton's comment 
>>>>> about using browser cache when possible).
>>>>>
>>>>> This will aid in development as we now have to open the browser's 
>>>>> network tab and disable the cache to refresh static files. In Mobile, 
>>>>> disabling cache is not possible, so we have to test in Incognito Mode. 
>>>>> It's 
>>>>> a frustrating development experience.
>>>>>
>>>>> Thank you.
>>>>>
>>>>

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers  (Contributions to Django itself)" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-developers+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-developers/12b65160-10b5-4af0-ab84-2cac8b7326f5n%40googlegroups.com.

Reply via email to