[GO] Enregistrer / mettre à jour / acquérir à l'aide de GAE (Python3) Cloud NDB.

But de cette fois

GAE (Python3) permet la mise à jour / l'acquisition de l'enregistrement des données à l'aide de Cloud NDB. En gros, utilisez exemples github. Cette fois, le module de python-docs-samples \ appengine \ standard_python3 \ building-an-app \ building-an-app-2 Je le crée comme base.

Modifier / installer requirements.txt

Ajoutez ce qui suit à requirements.txt directement sous le projet.

requirements.txt


google-cloud-ndb

Après l'ajout, exécutez la commande suivante dans le répertoire directement sous le projet pour installer google-cloud-ndb.

pip install -r requirements.txt

Ceci termine l'installation de Cloud NDB.

Création du processus d'enregistrement / mise à jour / acquisition des données

Cette fois, nous allons créer un module de traitement d'acquisition de mise à jour d'enregistrement de données simple. Le contenu est le suivant.

main.py


import datetime
from flask import Flask, render_template
from datastore import user

app = Flask(__name__)

@app.route('/')
def root():
  #Enregistrer ou mettre à jour l'utilisateur de test
  user.putData('test')
  #Obtenir un utilisateur de test
  selectUsr = user.get('test')
  return render_template('index.html', user=selectUsr)


if __name__ == '__main__':
    app.run(host='127.0.0.1', port=8080, debug=True)

datastore/user.py


import datetime
from google.cloud import ndb

#Informations de l'utilisateur
class User(ndb.Model):
  #Date et heure de la dernière connexion
  lastLoginDt = ndb.DateTimeProperty()

client = ndb.Client()

#Enregistrement / mise à jour de l'utilisateur
def putData(idStr):
  with client.context():
    user = User(
      id=idStr,
      lastLoginDt = datetime.datetime.now())
    user.put()

#Acquisition d'utilisateurs
def get(idStr):
  with client.context():
    return ndb.Key(User, idStr).get()

Définissez l'élément avec la classe. L'enregistrement / la mise à jour de l'utilisateur et l'acquisition de l'utilisateur sont effectués sous avec client.context () :. Cette fois, c'est simple, mais s'il n'y a pas de données, le processus de mise à jour de la date de connexion si enregistré est décrit.

templates/index.html


<!doctype html>
<html>
<head>
  <title>Sample</title>
  <script src="{{ url_for('static', filename='script.js') }}"></script>
  <link type="text/css" rel="stylesheet" href="{{ url_for('static', filename='style.css') }}">
</head>
<body>

  <h1>Sample</h1>
  <h2>{{ user.lastLoginDt }}</h2>
</body>
</html>

Confirmez que la date et l'heure de connexion de l'utilisateur de connexion enregistré et mis à jour sont affichées.

Procédez comme suit:

python main.py

Vérifiez http://127.0.0.1:8080/.

2020-09-23_02h38_58.jpg J'ai pu confirmer la date et l'heure de connexion. Jetons un coup d'œil au magasin de données. 2020-09-23_02h40_00.jpg Les données ont été enregistrées. 2020-09-23_02h41_49.jpg Quand j'y ai accédé à nouveau, j'ai pu confirmer que la date et l'heure avaient été mises à jour.

Je n'ai pas pu le faire très bien et cela a pris du temps, alors je vais le décrire.

C'est tout pour cette fois.

Merci beaucoup.

Recommended Posts

Enregistrer / mettre à jour / acquérir à l'aide de GAE (Python3) Cloud NDB.
Utiliser Cloud Storage depuis Python3 (Introduction)
Essayez d'utiliser Python avec Google Cloud Functions
Mise à jour Python (2.6-> 2.7)
Commencez à utiliser Python
Scraping à l'aide de Python
[AWS IoT] Enregistrer des éléments dans AWS IoT à l'aide du SDK AWS IoT Python
Enregistrez collectivement des données dans Firestore à l'aide d'un fichier csv en Python
Enregistrez des tickets avec l'API de Redmine en utilisant des requêtes Python
Procédure de transcription vocale à l'aide de Python et de l'API Google Cloud Speech