Exécution de requêtes SQL brutes dans les vues Django
Dans Django, vous pouvez exploiter des requêtes SQL brutes dans les vues pour accéder aux informations de base de données qui ne sont pas facilement disponibles via ORM. Pour illustrer cela, considérons un exemple de code vues.py :
from app.models import Picture def results(request): all = Picture.objects.all() yes = Picture.objects.filter(vote='yes').count() return render_to_response( 'results.html', {'picture': picture, 'all': all, 'yes': yes}, context_instance=RequestContext(request) )
Pour exécuter des requêtes SQL brutes dans cette fonction d'affichage, vous devez suivre ces étapes :
Importez le module Django nécessaire :
from django.db import connection
Obtenez un curseur pour interagir avec le base de données :
cursor = connection.cursor()
Construire une requête SQL :
sql_query = '''SELECT count(*) FROM app_picture WHERE vote = "yes"'''
Exécuter la requête SQL :
cursor.execute(sql_query)
Récupérer le résultats :
row = cursor.fetchone()
Traitez les résultats :
results = row[0]
Vous pouvez utiliser les résultats selon vos besoins dans votre logique de vue. Par exemple, vous pouvez attribuer la valeur à une variable et la transmettre au modèle pour l'afficher.
De plus, pour utiliser une clause WHERE dans la requête SQL, vous pouvez inclure les conditions pertinentes dans la chaîne de requête :
sql_query = '''SELECT count(*) FROM app_picture WHERE vote = "yes"'''
En incorporant ces étapes, vous pouvez effectuer des requêtes SQL brutes dans les vues Django et accéder à des informations de base de données spécifiques pour améliorer les fonctionnalités de votre application.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!