J'ai un problème unicode et, comme chaque fois que j'ai quelque chose lié, je suis complètement perdu ..Django - à Unicode
Un de mon modèle Django rend un TypeError:
Exception Value:
coercing to Unicode: need string or buffer, long found
Le ligne donnant problème est juste une chaîne (que je veux utiliser dans une requête MySQL):
query = unicode('''(SELECT asset_name, asset_description, asset_id, etat_id, etat_name FROM Asset LEFT OUTER JOIN Etat ON etat_id_asset=asset_id WHERE asset_id_proj='''+proj+''' AND asset_id_type='''+t.type_id+''' ORDER BY asset_name, asset_description) UNION (SELECT asset_name, asset_description, asset_id, 'NULL', 'NULL' FROM Asset WHERE asset_id_proj='''+proj+''' AND asset_id_type='''+t.type_id+''' AND asset_id IN (SELECT etat_id_asset FROM Etat)); ''')
que peut-être mal ici?
Que contient t.type_id et proj? – dragoon
Ok, je viens de trouver la façon officielle de le faire dans Django et ça marche bien. Désolée de vous avoir fait perdre votre temps ! (C'est comme ceci: 'Person.objects.raw ('SELECT * FROM myapp_person OERE last_name =% s', [lname])') – Johanna
Si vous voulez simplement sélectionner tout depuis une table, vous pouvez le faire plus efficacement: '' Person.objects.filter (last_name = lname) '' Voir les docs de Django ORM) – dragoon