Django supports unicode strings for the User model, but your database must also support it. If you use sqlite, there should be no problems, but, for example, in mySQL, the default column encoding is not utf-8.
To solve this problem, you can manually modify the auth_user first_name and last_name column tables for utf8_unicode_ci . Alternatively, you can set the database mapping to utf8_unicode_ci before doing syncdb (and creating tables in the first time), so all your tables and columns follow the same coding.
source share