Comment puis-je lance un char en entier lors de leurs recherches dans l'ORM de django?

Récemment commencé à utiliser l'ORM de Django.Je veux exécuter cette requête

 select student_id from students where student_id like "%97318%" order by CAST(student_id as UNSIGNED) desc;   

où student_id est un CharField qui je veux, en tant qu'entier pour l'interrogation.
J'ai essayé avec

  students.objects.filter(student_id__contains "97318").order('-student_id')

fonctionne très bien. Mais vous ne savez pas et ne pouvait pas trouver la manière de voter "student_id" int comme la requête MySQL mentionné ci-dessus avec "l'ORM de Django". devrais-je utiliser le raw de la requête ou est-il un moyen de sortir?
Laissez-moi savoir vos suggestions.

Il vous manque des = sur le filter(...). Si cru requête qui fonctionne pour vous, je me demande est-il une raison particulière vous à utilisation d'un ORM?
Vous ne pouvez pas commander des chaînes par le nombre de leurs valeurs. "2" > "11" mais 2 < 11
Je suis d'accord, mais ne peut toujours pas expliquer pourquoi ce est être dans ORM, alors que sql brut pouvez effectuer tout beaux
sql brut n'est pas nécessaire ici. extra() peut faire le travail tout aussi bien.

OriginalL'auteur Learner_Programmer | 2015-01-23