Je crée un blog en pratiquant Django, et j'ai défini le modèle suivant en fonction du manuel. À ce moment-là, je ne comprenais pas la signification de l'unicode, alors je l'ai résumé.
class Blog(models.Model):
title = models.CharField(max_length=100, unique=True)
slug = models.SlugField(max_length=100, unique =True)
body = models.TextField()
posted = models.DateField(db_index=True,auto_now_add=True)
category = models.ForeignKey('blog.Category')
def __unicode__(self):
return '%s' % self.title
Il semble que beaucoup de gens le savent, mais bien sûr je suis un débutant et je ne sais pas. Je suis un "Guguru Kas" autoproclamé, alors Kas a cherché sur Google comme Kas.
unicode est l'un des moyens de gérer des millions de langues de manière unifiée sur un ordinateur.
Il existe de nombreuses façons pour un ordinateur de comprendre un langage naturel, pour donner un exemple:
Je suis confus.
Donc, ces méthodes sont comme encoder, qui est un périphérique que l'ordinateur doit comprendre, mais il semble que cela dépend de chaque méthode.
Donc, bien sûr, si vous gérez une chaîne de caractères avec du python ordinaire, elle sera encodée, mais comme il existe de nombreux arrière-plans de lecteurs sur le Web, et chacun est échangé avec l'ordinateur en langage naturel en utilisant différentes méthodes, Il semble qu'il sera foiré en fonction de l'environnement du lecteur.
Par exemple, supposons que la lettre A soit codée en ASCII et stockée sur un ordinateur. Ensuite, réfléchissons à ce qui se passe lorsque l'environnement de l'appelant est utf-8.
Caractère A → ASCII → code de caractère= 123456
On suppose qu'il est enregistré avec le code tel que.
Donc, si l'environnement de l'appelant est utf-8, ...
Code de caractère= 123456 → utf-8 → lettre B
Une chaîne de caractères différente est renvoyée. En fin de compte, la même chaîne de caractères n'existe pas et la page Web entière devient ??????????????.
Je suis arrivé à ce point et j'ai pensé: "Dois-je gérer tous les codes de caractères avec unicode?", Mais il semble que le monde ne soit pas si pratique. Le ciel peut donner deux choses, mais apparemment, le monde humain est toujours un compromis.
unicode a abandonné la possibilité de ** montrer aux humains ** en échange de la possibilité d'être une norme unifiée pour les ordinateurs
On dirait. Ou plutôt, si ce n'est pas le cas, Tsuji ne correspondra pas, alors j'ai décidé de le comprendre provisoirement. (Le titre est donc un mémo.)
Revenons à Django.
Dans Django, il semble que toutes les informations soient échangées en unicode dans le cadre. Ainsi, l'unicode est un peu ignoré lors de son affichage aux humains, donc pour le réparer, il est nécessaire d'écrire unicode à la place du modèle.
Pour le moment, l'article est terminé dans une situation pleine de précipitation, mais pour le moment, je vais faire un paragraphe et passer à autre chose.
Je sais ce que j'ai besoin de savoir (devrais)
Recommended Posts