Utilisation de ImageField de Django avec AppEngine / Python

Utilisation de ImageField de Django avec AppEngine / Python

Lors de l'ajout d'une fonction de téléchargement d'image, Si vous utilisez le ImageField fourni avec Django, C'est pratique car il traite si l'image est appropriée, Cela ne fonctionne pas car AppEngine n'a pas de PIL. En utilisant ImageField no module named image J'obtiens une erreur comme celle-ci et le développement et la production échouent.

Derrière le refroidisseur:  https://developers.google.com/appengine/docs/python/images/installingPIL Quand j'ai vu cette page pour la première fois, j'ai mal compris que PIL pouvait être utilisé avec AppEngine, il a donc fallu beaucoup de temps pour le résoudre. En fait, AppEngine n'autorise pas PIL et expose à la place une API pour les images. La bonne réponse est d'inclure un PIL dans le serveur AppEngine pour le développement afin d'émuler cette API.

J'ai toujours été sceptique quant à la façon d'installer PIL.

Introduction de la PIL factice

Le framework de Django ne peut pas être falsifié avec le véritable AppEngine, Je pensais que je devais écrire le processus moi-même, J'ai cherché sur Google et trouvé une solution.

Image uploads working with models.ImageField on django-nonrel/appengine w/ django-fileuploads - ZONE – UYSRC Developer Blog

La fonction PIL utilisée par Django, La solution consiste à créer un mannequin encapsulé dans l'API AppEngine. Dans ce cas, vous pouvez utiliser ImageField sans toucher au cœur de Django.

Comment utiliser

PIL/init.py La source est au-dessus. Créez un dossier appelé PIL à la racine de l'application AppEngine Créez le init.py ci-dessus et vous êtes prêt à partir. Après cela, vous pouvez utiliser ImageField comme Django normal.

Recommended Posts

Utilisation de ImageField de Django avec AppEngine / Python
Comment utiliser Django avec Google App Engine / Python
Utilisez ndb.tasklet avec Google App Engine
[Python] Exécutez Flask sur Google App Engine
Utiliser des modules externes avec Google App Engine
Tweet (API 1.1) avec Google App Engine pour Python
Utilisez matplotlib sur Ubuntu 12 et Python
PIL en Python sur Windows8 (pour Google App Engine)
Utiliser Python sur Windows (PyCharm)
Sakura utilisant Python sur Internet
ImageField de Django
Exécutez Cloud Dataflow (Python) depuis AppEngine
Mémorandum sur l'utilisation du python gremlin
Utiliser sans installer python 2.x sous Windows
Installez python sur xserver pour utiliser pip
Python sur Windows
twitter avec python3
Gagnez l'application Web Python + Flask avec Jenkins
Comment utiliser Python Kivy ④ ~ Exécution sur Android ~
python sur mac
Mes réflexions sur le modèle d'application de ligne de commande python2.6
Créez un environnement Flask Python3 + sur Compute Engine de GCP
Python sur Windbg
Jusqu'à l'utilisation de PhantomJS avec Python sur Heroku
Utilisez l'application LibreOffice en Python (3) Ajouter une bibliothèque
(Débutant) Utilisation de base du magasin de données de Google App Engine
Premiers pas avec Google App Engine pour Python et PHP
Exemple d'apprentissage SPA (Angular2 + Bootstrap / App Engine / Python + webapp2)
Ubuntu 20.04 sur raspberry pi 4 avec OpenCV et utilisation avec python
Version d'exécution de l'environnement standard Google App Engine / Python
Scraping Web pour débutants avec Python (4) --2 Scraping sur Cloud Shell
Utilisez Thingsspeak de Python
Conda Python avec Cygwin
Installer python sur WSL
Utilisez config.ini avec Python
Configuration de PyOpenGL sur Python 3
[Python] Utiliser JSON avec Python
Utiliser fluentd de python
Installez Python sur Pidora.
Installez Scrapy sur python3
Utiliser Valgrind avec Python
Utilisez MySQL depuis Python
Utiliser mecab avec Python 3
Installez Python sur Mac
Utiliser le client LiquidTap Python ③
Installer des pandas sur python2.6
Utilisez Python 3.8 avec Anaconda
Avez-vous des recommandations pour un livre de commentaires sur le développement de GoogleAppEngine / Python?
python basic ② sous windows
Installez python sur Windows
Utiliser python avec docker
Utiliser le client LiquidTap Python ②
Moteur de template Jinja2 2 Python
Installez Python 2.7.3 sur CentOS 5.4
Utilisez BigQuery depuis Python.
Utiliser le profileur en Python
Utilisez Ansible sur Windows
construire Python sur Ubuntu
Installez Python 3.3 sur Ubuntu 12.04
Installez Python 3.4 sur Mac
Utilisez QuTiP sur Windows