Parfois, on souhaite générer quelques exemples d'entrées dans une base. Avec ce script Python, vous pouvez générer très rapidement de quelques entrées à plusieurs milliers.
Cet article vous guide à travers les différentes sections du script afin que vous puissiez comprendre son fonctionnement et l'adapter à vos besoins si nécessaire. Vous trouverez le script complet à la fin de cet article.
1) Charger les modules
Chaque script Python commence par le chargement des modules Python utilisés. Nous utiliserons Base et context de la classe seatable_api. Vous n'avez besoin du module random de la deuxième ligne que si vous voulez générer des nombres aléatoires.
from seatable_api import Base, context import random
2) Authentification
Les deux lignes suivantes sont nécessaires pour établir la connexion avec la base actuelle. Après cette authentification, nous pouvons soit lire, soit supprimer, soit manipuler des informations via l'objet base.
base = Base(context.api_token, context.server_url) base.auth()
3) Définir de nouveaux contenus de ligne
Maintenant que nous avons accès à la table actuelle, nous pouvons définir les enregistrements à créer. Le code suivant part du principe que vous avez des colonnes nommées Name, single, random, rating. Si vos colonnes s'appellent autrement, vous devez adapter les noms en conséquence.
# define the data for two new rows rows_data = [ { 'Name': "I am new Row", 'single': "new", 'random': random.randint(0,100000000), 'rating': random.randint(0,5) }, { 'Name': "I am second new row", 'single': "other value", 'random': random.randint(0,100000000), 'rating': random.randint(0,5) }, ]
4) Écrire de nouvelles lignes
Avec le dernier bloc de code, le contenu des nouvelles lignes a certes été défini et enregistré dans la variable rows_data, mais il n'a pas encore été écrit dans la base. Nous le faisons maintenant avec l'appel suivant.
# append the two rows base.batch_append_rows(context.current_table, rows_data)
5) Si vous voulez plus de lignes
Vous pouvez bien entendu écrire plus de deux lignes. Pour ce faire, il vous suffit de définir d'autres contenus de ligne ou d'exécuter plusieurs fois le processus d'écriture à l'aide d'une boucle.
# execute batch append 10 times for i in range(10): # define the data for two new rows ... # append the two rows ...
Le script complet
Le script complet devrait pouvoir être exécuté immédiatement chez vous sans grandes adaptations. Modifiez les quatre noms de colonnes et le script devrait pouvoir créer de nouvelles lignes dans votre tableau.
from seatable_api import Base, context import random base = Base(context.api_token, context.server_url) base.auth() # execute batch append multiple times for i in range(10): # define the data for two new rows rows_data = [ { 'Name': "I am new Row", 'single': "new", 'random': random.randint(0,100000000), 'rating': random.randint(0,5) }, { 'Name': "I am second new row", 'single': "more than new", 'random': random.randint(0,100000000), 'rating': random.randint(0,5) }, ] # append the two rows base.batch_append_rows(context.current_table, rows_data)
Le script peut être lancé manuellement, via un bouton ou par automatisation. Pour en savoir plus, cliquez ici.