You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Mar 6, 2022. It is now read-only.
data = {k: v for k, v in locals().iteritems() if not v in (self, None)}
estava a obter uma falha que fazia com que data estivesse sempre vazia. Um debug rápido fez-me perceber que locals() estava a sofrer alterações (em stdin) durante a iteração o que provocava erro.
A solução é guardar os locals numa variável antes de iterar:
localvars = copy.deepcopy(locals())
data = {k: v for k, v in localvars.iteritems() if not v in (self, None)}
Após essa alteração já não tinha problemas a gerar o conteúdo de data, mas agora obtinha erro quando em make_request tentava obter o dump JSON de data. A excepção que ocorria dizia que UnBabel API não é um objecto serializável em JSON. Investigando descobri que data tinha como um dos seus dados self (apesar do if acima). Então voltei a alterar a linha acima para:
localvars = copy.deepcopy(locals())
data = {k: v for k, v in localvars.iteritems() if not v in (self, None) and not k == 'self'}
Agora data já é serializado em JSON e os dados enviados ao servidor com sucesso
The text was updated successfully, but these errors were encountered:
Sign up for freeto subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Onde está:
data = {k: v for k, v in locals().iteritems() if not v in (self, None)}
estava a obter uma falha que fazia com que data estivesse sempre vazia. Um debug rápido fez-me perceber que locals() estava a sofrer alterações (em stdin) durante a iteração o que provocava erro.
A solução é guardar os locals numa variável antes de iterar:
localvars = copy.deepcopy(locals())
data = {k: v for k, v in localvars.iteritems() if not v in (self, None)}
Após essa alteração já não tinha problemas a gerar o conteúdo de data, mas agora obtinha erro quando em make_request tentava obter o dump JSON de data. A excepção que ocorria dizia que UnBabel API não é um objecto serializável em JSON. Investigando descobri que data tinha como um dos seus dados self (apesar do if acima). Então voltei a alterar a linha acima para:
localvars = copy.deepcopy(locals())
data = {k: v for k, v in localvars.iteritems() if not v in (self, None) and not k == 'self'}
Agora data já é serializado em JSON e os dados enviados ao servidor com sucesso
The text was updated successfully, but these errors were encountered: