def _save_to_disk(self, clients): temp_table_name = self.table_name + '.tmp' with open(temp_table_name, mode='w') as f: writer = csv.DictWriter(f, fieldnames=Client.schema()) writer.writerows(clients) os.remove(self.table_name) os.rename(temp_table_name, self.table_name)
def list_clients(self): with open(self.table_name, mode='r') as f: reader = csv.DictReader(f, fieldnames=Client.schema()) return list(reader)
def create_client(self, client): with open(self.table_name, mode='a') as f: writer = csv.DictWriter(f, fieldnames=Client.schema()) writer.writerow(client.to_dict())