capfirst Filter



Capitalizes the first letter of a value.


greeting = 'hello, world!'


{{ greeting|capfirst }}


Hello, world!


In general, we prefer using CSS to formatting filters like this one; however, there is no CSS property equivalent to the capfirst filter. CSS's text-transform: capitalize property works like the title filter (i.e., it capitalizes the first letter of each word). Also, there is an advantage to using Django: because the formatting is applied server-side, the value returned to the client will already be formatted appropriately. If the client does not support CSS or has CSS turned off, that will not affect the formatting.

And, of course, if you are using Django to output plain text or some other non-HTML format, formatting filters could come in handy.

Did we get something wrong? Is there a use case for the capfirst filter that we should add? Please let us know.

Send Feedback

Official Documentation
This page last updated on Oct. 30, 2022, 1:21 p.m. EST