Vous n'êtes pas identifié(e).
Bonsoir
Je suis en train d'apprendre Django en auto apprentissage et j'ai un pb avec les codages utf8
J'en suis aux models et je renconte un problème dans l'interface d'admin avec les champs ou il y a des accents
Apres recherches et test divers 'u' %s ()... , j'ai trouvé que smart_text etait adapté
j'ai donc fait un import de smart_text dans les modeles et tout allait bien jusqu'au 4eme champs,l'ajout d'un 5eme champ (Commune) génére une erreur "smart_text() takes at most 4 arguments (5 given)"
Je me dis donc qu'il doit y avoir un moyen plus intelligent que smart_text et compte sur vous pour une explication.
Voici le modele
class Etablissement (models.Model):
Nom = models.CharField(max_length=100)
Categories = models.ManyToManyField('Categorie')
Description = models.TextField(null=True,blank=True)
Marques = models.TextField(null=True,blank=True)
Adresse = models.CharField(max_length=100)
Departement = models.ForeignKey('Departement')
Code_Postal = models.CharField(max_length=10)
Commune = models.CharField(max_length=100)
Tel = models.CharField(max_length=20)
Web = models.URLField('Your Web site',null=True,blank=True)
Email = models.EmailField(null=True, blank=True)
Photo1 = models.ImageField(upload_to = 'images/', default = 'images/None/no-img.jpg',null=True, blank=True)
Photo2 = models.ImageField(upload_to = 'images/', default = 'images/None/no-img.jpg',null=True, blank=True)
Localisation = models.TextField(null=True,blank=True)
def __unicode__(self):
return smart_unicode(self.Nom,self.Description,self.Marques,self.Adresse,self.Commune)
Merci de vos conseils
je suis en Django 1.7.2 et python 2.7
Hors ligne
Il te faut utiliser le formatage de chaines de caractères:
def __unicode__(self):
return u"%s %s %s %s %s" % (self.Nom, self.Description, self.Marques, self.Adresse, self.Commune)
Dernière modification par Xavier Ordoquy (08-01-2015 10:56:30)
Hors ligne
Merci
En effet ca roule , j'avais testé comme cela mais pour une raison qui m'échappe je n'avais pas réussi
Merci encore
Hors ligne