sql >> Database >  >> RDS >> Mysql

Flask_SQLAlchemy, MySQL, Zweedse karakters opslaan å, ä, ö?

Aangezien je Python 2.7 gebruikt, moet je specificeren dat je string unicode bevat.

>>> db.session.add(Users(u'ä'))

U kunt ook een toekomstige import gebruiken om alle tekenreeksen als unicode te behandelen.

from __future__ import unicode_literals

Als alternatief kunt u uw versie van Python upgraden. 2.7 is de laatste versie die strings als bytes behandelt in plaats van als unicode.

Bewerken

Je moet ook je __repr__ . updaten zodat het op de juiste manier met Unicode omgaat.

def __repr__(self):
    return self.name.decode('utf-8')

of welke codering u ook wilt gebruiken.

Over het algemeen moet u ervoor zorgen dat u de codering van en decodering naar unicode afhandelt. Ik kan je niet genoeg aansporen om te overwegen een recentere versie van Python te gebruiken. Een van de grootste veranderingen in Python 3 lost dit probleem op.



  1. Quickbooks ODBC-stuurprogramma

  2. Waarom is SELECT zonder kolommen geldig?

  3. SQL transponeren volledige tabel

  4. Verouderde functies om uit uw gereedschapskist te halen - Deel 1