Maison > développement back-end > Tutoriel Python > Comment déterminer l'emplacement correct du répertoire de script lors de l'exécution via une vue Django ?

Comment déterminer l'emplacement correct du répertoire de script lors de l'exécution via une vue Django ?

DDD
Libérer: 2024-10-24 05:07:30
original
264 Les gens l'ont consulté

How to Determine the Correct Script Directory Location when Run Through a Django View?

Comment déterminer l'emplacement du répertoire d'un script

Une enquête a été soulevée concernant la détermination de l'emplacement du répertoire d'un script, en particulier lorsqu'il est exécuté dans un script exécuté par une vue Django. Le code Python en question utilise os.getcwd() pour récupérer le répertoire du fichier de script, mais des divergences surviennent entre l'exécution de la ligne de commande et l'exécution du script via une vue Django, ce qui entraîne l'apparition de "/". étant imprimé à la place.

Approches alternatives

Pour résoudre ce problème, diverses approches ont été proposées :

  • Utiliser os. getcwd() : Bien que os.getcwd() fournisse le répertoire de travail actuel, il s'aligne toujours sur le répertoire du script.
  • Utilisation de os.path.abspath() : Semblable à os.getcwd(), os.path.abspath() renvoie également le répertoire de travail actuel, qui peut ou non être le répertoire du script.
  • Utilisation de file__ : Lors de l'exécution du script depuis une vue Django, __file ne fournit que le nom du fichier sans le chemin.

La solution

Pour identifier de manière cohérente le répertoire du script emplacement, l'approche suivante est recommandée :

<code class="python">import os
print(os.path.dirname(os.path.realpath(__file__)))</code>
Copier après la connexion

En employant os.path.realpath sur file__, le chemin est résolu même si __file ne contient que le nom du fichier. En conséquence, cette approche garantit une récupération précise du chemin du répertoire dans divers scénarios d'exécution.

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!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal