django のドキュメントでは、URL では ASCII 文字しか使用できないと書かれています。IDN ドメインにある文字のため、私には奇妙に思えます。たとえば、IDN ドメインを持っていて、URL に ASCII 文字だけでなく文字列を含めたい場合、デフォルトでは簡単にこれを行うことは本当に不可能ですか?
はい。Python はPunycodeをネイティブにサポートしています。
>>> 'xn--' + u'たとえば'.encode('punycode') + '.com'
'xn--r8j2b1a7a.com'