Verwendung TinyDB Ich habe ein Objekt für die Datenbankoperationen wie folgt aus:Call Funktion in If-Anweisung/Aufruf mit print() - gute Praxis?
#database.py
class DataBase(object):
"""CRUD access to database."""
def __init__(self):
"""Initialize database."""
self.db = TinyDB('/db.json')
def new(self, **kwargs):
"""Add a new entry to the database."""
if self.db.insert(kwargs): # 1
return 'New item added to the database.'
else:
return 'Item NOT added to the database.'
Verfahren ‚Einfügen‘ aus TinyDB liefert die ID des Eintrags, nachdem es eingelegt wird, siehe 1 #. Also ich verwende diesen Effekt zu einem Erfolg zurück/Meldung fehlschlagen, die angezeigt werden können, wenn die Funktion mit Druck() aufgerufen wird:
#main.py
#...
@entry.command('new')
@click.argument('first_arg', type=str)
@click.argument('second_arg', type=str)
def entry_new(**kwargs):
"""Create a new entry."""
if kwargs is not None:
click.echo(a_db.new(**kwargs)) # 2
#...
Frage 1:
if self.db.insert(kwargs):
Ist es ' good practice ', um die insert-Funktion in der condition-Anweisung des if-Blocks auszuführen? Wenn nicht, was sind die Alternativen, um eine if/else-Anweisung basierend auf dem Rückgabewert zu erstellen?
Frage # 2:
click.echo(a_db.new(**kwargs))
Der gesamte Prozess eine Datei in die Datenbank eingefügt wird in einer Druck-Anweisung eingewickelt in der Lage sein, den Rückgabewert der Insert-Funktion zugreifen. Ist diese 'gute Praxis' oder gibt es bessere Möglichkeiten, die Einfügefunktion aufzurufen, auf den Rückgabewert zuzugreifen und sie auszudrucken?
Vielen Dank im Voraus für Ihre Klarstellungen!