Здесь не эксперт по Джанго, но на самом деле у Джанго нет магии, и я даже не могу представить себе такую магию, которая бы работала.
Например: вы не всегда хотите экономить время в UTC. Например, в приложении календаря вы хотите сохранить дату и время по местному времени, когда происходит событие календаря. Который может отличаться как от сервера, так и от часового пояса пользователя. Поэтому наличие кода, который автоматически преобразует каждую выбранную дату-время в часовой пояс сервера, было бы очень плохо.
Так что да, вам придется справиться с этим самостоятельно. Я бы порекомендовал сохранить часовой пояс для всего, и, конечно, запустить сервер в формате UTC и позволить всем датам времени, сгенерированным приложением, использовать UTC, а затем преобразовать их в часовой пояс пользователей при отображении. Это не сложно, просто раздражает вспоминать. Когда дело доходит до даты и времени, которые вводит пользователь, это зависит от приложения, нужно ли вам конвертировать в UTC или нет. В качестве общей рекомендации я бы не конвертировал в UTC, а сохранил бы в часовом поясе пользователей, с информацией о том, какой это часовой пояс.
Да, часовые пояса - большая проблема. Я написал пару постов в блоге по раздражающей проблеме, как здесь: http://regebro.wordpress.com/2007/12/18/python-and-time-zones-fighting-the-beast/
В конце концов, вам придется самостоятельно позаботиться о проблемах с часовыми поясами, потому что на большинство проблем нет правильного ответа.