def createDomain(self, coinbase, resigning): used = not resigning b = False try: try: db_relayer = Relayer.select().where( Relayer.coinbase == coinbase).get() except Relayer.DoesNotExist: b = True db_relayer = model_to_dict(db_relayer) Domain.update(used=used, coinbase=coinbase).where( Domain.domain == db_relayer['domain']).execute() except: pass try: db_domain = Domain.select().where(Domain.used == False).order_by( Domain.id.asc()).get() db_domain = model_to_dict(db_domain) if b == True: Domain.update(used=True, coinbase=coinbase).where( Domain.domain == db_domain['domain']).execute() return db_domain['domain'] except: countDomain = Domain.select().where(Domain.used == True).count() domain = 'https://' + format( countDomain, '03d') + '.' + settings['domain_suffix'] Domain.insert( domain=domain, used=True, coinbase=coinbase).on_conflict_ignore(True).execute() return domain
async def get(self): relayers = [model_to_dict(relayer or {}) for relayer in Relayer.select()] tokens = [model_to_dict(token or {}) for token in Token.select()] domains = [model_to_dict(domain or {}) for domain in Domain.select()] contracts = Blockchain.contracts self.json_response({ 'Relayers': relayers, 'Contracts': contracts, 'Tokens': tokens, 'Domains': domains })