[PYTHON] Développement d'applications mobiles avec IBM Bluemix Kinetise (1)

** Qu'est-ce que Kinetise ** Kinetise est un service de développement d'applications mobiles disponible dans Bluemix (décembre 2015) À partir du mois). En établissant des liens avec Web Service par Python et Django, nous avons réalisé un développement rapide d'une application mobile capable de traiter CRUD.

** Ce que je veux transmettre dans cet article ** Pour les services Web Python et Django, le déploiement du runtime Bluemix Python et la création d'applications avec Kinetise, reportez-vous au guide Kinetise Starters SDK pour la procédure de travail réelle. Et comment résoudre le problème. Notez que l'authentification n'est pas implémentée. Lors de son développement, il est nécessaire de le considérer séparément.

** Environnement de travail ** Je travaille dans un environnement Windows 7 SP1 64 bits. Pour Python, Django, etc., veuillez vous référer à requirements.txt ci-dessous. L'important est d'utiliser la version incluse dans le [Python buildpack] de Github (https://github.com/cloudfoundry/python-buildpack) pour le déploiement avec Bluemix. L'utilisation d'une version qui n'est pas incluse dans le buildpack entraînera des erreurs de compatibilité lors du déploiement, ce qui compliquera la tâche d'isolement du problème. Python 2.7 est utilisé pour rf_alter_api.zip, qui est une bibliothèque dédiée à Kinetise. En effet, rf_alter_api.zip utilise une fonction modifiée en Python 3 (par exemple, urlparse en Python 2.7 a été renommé en urllib.parse en Python 3), ce qui provoque une erreur (en décembre 2015).

** Procédure de travail ** La procédure est la suivante. J'expliquerai chaque travail.

  1. Préparation liée à Eclipse et Python (introduction, création de projet Python)
  2. Modification du code Python
  3. Vérifier le fonctionnement avec POSTMAN
  4. Déployer sur l'environnement d'exécution Bluemix Python
  5. Développement et construction d'une application mobile avec Kinetise (travail acharné)

** 1. Préparation liée à Eclipse et Python (introduction, création de projet Python) ** 1.1 Installez Eclipse et Python en vous référant à la Procédure des grands ancêtres. Notez que cet article utilise Eclipse Marse.1 (4.5.1) et Python 2.7.10. Pour le plug-in de développement Python d'Eclipse, vous pouvez utiliser l'environnement PyDev depuis le début en sélectionnant la version Python de Pleiades All in One.

1.2 Créez un environnement virtuel (env3) dans Mes documents et installez les modules requis. Pour la commodité de l'environnement virtuel et d'Eclipse, veuillez consulter les articles de nos prédécesseurs. Sur ce PC de travail, plusieurs versions de Python ont été installées et plusieurs environnements virtuels ont été construits, de sorte que les commandes telles que virtualenv et pip sont spécifiées avec des chemins absolus pour éviter toute confusion. Puisque vitalenv a déjà été installé, nous vérifions la version avec gel. S'il n'a pas été installé, installez-le avant de commencer à travailler. Voici le journal. Le nom d'utilisateur est hoge.

Journal des commandes


C:\Users\hoge\Documents>C:\Python27\Scripts\pip.exe freeze -l
virtualenv==13.1.2

C:\Users\hoge\Documents>C:\Python27\Scripts\virtualenv.exe env3
New python executable in env3\Scripts\python.exe
Installing setuptools, pip, wheel...done.

C:\Users\hoge\Documents>cd env3\Scripts

C:\Users\hoge\Documents\env3\Scripts>activate
(env3) C:\Users\hoge\Documents\env3\Scripts>pip install django
Collecting django
  Using cached Django-1.9-py2.py3-none-any.whl
Installing collected packages: django
Successfully installed django-1.9

(env3) C:\Users\hoge\Documents\env3\Scripts>pip install djangorestframework
Collecting djangorestframework
  Using cached djangorestframework-3.3.2-py2.py3-none-any.whl
Installing collected packages: djangorestframework
Successfully installed djangorestframework-3.3.2

(env3) C:\Users\hoge\Documents\env3\Scripts>pip install markdown
Collecting markdown
Installing collected packages: markdown
Successfully installed markdown-2.6.5

(env3) C:\Users\hoge\Documents\env3\Scripts>pip install django-filter
Collecting django-filter
  Using cached django_filter-0.11.0-py2.py3-none-any.whl
Installing collected packages: django-filter
Successfully installed django-filter-0.11.0

(env3) C:\Users\hoge\Documents\env3\Scripts>pip install yattag
Collecting yattag
Installing collected packages: yattag
Successfully installed yattag-1.5.2

(env3) C:\Users\hoge\Documents\env3\Scripts>pip install drf-extensions
Collecting drf-extensions
Requirement already satisfied (use --upgrade to upgrade): djangorestframework>=2
.3.5 in c:\users\hoge\documents\env3\lib\site-packages (from drf-extensions)

Installing collected packages: drf-extensions
Successfully installed drf-extensions-0.2.8

(env3) C:\Users\hoge\Documents\env3\Scripts>pip freeze -l
Django==1.9
django-filter==0.11.0
djangorestframework==3.3.2
drf-extensions==0.2.8
Markdown==2.6.5
wheel==0.24.0
yattag==1.5.2

1.3. Démarrez Eclipse. Spécifiez C: \ Users \ hoge \ workspace_env3 comme espace de travail. Window-Select Python Interpreter dans Paramètres, le nom de l'interpréteur est python27 et le fichier exécutable de l'interpréteur est C: \ Users \ hoge \ Documents \ env3 \ Scripts \ python.exe. Décompressez le fichier rf_alter_api.zip téléchargé depuis kinetise et copiez le dossier rf_alter_api dans C: \ Users \ hoge \ Documents \ env3 \ Lib \ site-packages. À ce moment-là, décochez la case lecture seule dans les propriétés du dossier. Cela fonctionne sans le supprimer. Une erreur d'écriture peut se produire car un fichier pyc est généré dans ce dossier? Le but est de dissiper l'anxiété.

1.4 Dans Eclipse Sélectionnez Fichier-Nouveau-Projet PyDev-PyDev Django et créez un nouveau projet Pydev avec le nom de projet kinetise. Sélectionnez python27 comme interpréteur. Faites un clic droit sur le projet kinetise et sélectionnez Django-Migrate (Django> = 1.7) manage.py migrate. De même, sélectionnez Django-Create Application (manage.py start app) et spécifiez des commentaires pour le nom de l'application Django. (Supplément) Si vous créez un environnement virtuel avec Python 3 virtualenv en 1.2, le projet kinetise ne fonctionnera pas correctement car le PYTHONPATH du projet kinetise contient des modules Python 3 qui ne prennent pas en charge kinetise. Pour résoudre ce problème, vous devrez recommencer avec Python 2.7 vitalenv. De plus, la série de travaux est équivalente aux commentaires django-admin startproject kinetise ~ manage.py startapp sur la ligne de commande, ce qui rend manage.py disponible sur Eclipse. En passant, concernant la création d'un nouveau projet Eclipse, veuillez noter que si vous sélectionnez le projet Pydev depuis le début, manage.py ne sera pas créé et le travail ultérieur sera compliqué. Si le dernier écran est l'écran de configuration sqlite3, manage.py a été créé. Vous pouvez ajouter manage.py vous-même, mais il est plus facile de le recréer à partir de zéro avec File-New-Project. De plus, le dossier rf_alter_api contient des objets pour le service Web de Kinetise, qui doivent être référencés via PYTHONPATH. En d'autres termes, le chemin du dossier rf_alter_api doit être inclus dans le "PYTHONPATH pour exécution" dans Eclipse et dans la variable d'environnement PYTHONPATH dans run.sh pour Bluemix.

Ceci conclut l'explication de la préparation liée à Eclipse et Python (introduction, création du projet Python). Ensuite, je vais vous expliquer PYTHON Code Fix.

Recommended Posts

Développement d'applications mobiles avec IBM Bluemix Kinetise (3)
Développement d'applications mobiles avec IBM Bluemix Kinetise (1)
Développement d'applications mobiles avec IBM Bluemix Kinetise (2)
Développement d'applications mobiles avec IBM Bluemix Kinetise (1)
Virtualiser (isoler) l'environnement de développement IBM i python avec chroot
Résumé du développement avec Django
Développement du microservice Bluemix Python
Virtualiser (isoler) l'environnement de développement IBM i python avec chroot
Résumé du développement avec Django
Développement du microservice Bluemix Python