1
resposta

erro ao tentar criar jogo

ao tentar criar um jogo, obtive o seguinte erro:

127.0.0.1 - - [27/Sep/2018 11:42:50] "GET /novo HTTP/1.1" 200 -
[2018-09-27 11:43:07,406] ERROR in app: Exception on /criar [POST]
Traceback (most recent call last):
  File "/home/gabriel/jogoteca/venv/lib/python3.6/site-packages/flask/app.py", line 1982, in wsgi_app
    response = self.full_dispatch_request()
  File "/home/gabriel/jogoteca/venv/lib/python3.6/site-packages/flask/app.py", line 1614, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/home/gabriel/jogoteca/venv/lib/python3.6/site-packages/flask/app.py", line 1517, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/home/gabriel/jogoteca/venv/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
    raise value
  File "/home/gabriel/jogoteca/venv/lib/python3.6/site-packages/flask/app.py", line 1612, in full_dispatch_request
    rv = self.dispatch_request()
  File "/home/gabriel/jogoteca/venv/lib/python3.6/site-packages/flask/app.py", line 1598, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/home/gabriel/jogoteca/jogoteca.py", line 53, in criar
    jogo_dao.salvar(jogo)
  File "/home/gabriel/jogoteca/dao.py", line 16, in salvar
    cursor = self.__db.connection.cursor()
  File "/home/gabriel/jogoteca/venv/lib/python3.6/site-packages/flask_mysqldb/__init__.py", line 94, in connection
    ctx.mysql_db = self.connect
  File "/home/gabriel/jogoteca/venv/lib/python3.6/site-packages/flask_mysqldb/__init__.py", line 81, in connect
    return MySQLdb.connect(**kwargs)
  File "/home/gabriel/jogoteca/venv/lib/python3.6/site-packages/MySQLdb/__init__.py", line 85, in Connect
    return Connection(*args, **kwargs)
  File "/home/gabriel/jogoteca/venv/lib/python3.6/site-packages/MySQLdb/connections.py", line 204, in init
    super(Connection, self).init(*args, **kwargs2)
TypeError: an integer is required (got type str)
127.0.0.1 - - [27/Sep/2018 11:43:07] "POST /criar HTTP/1.1" 500 -

como resolvê-lo?

1 resposta

Olá Gabriel, fica um pouco difícil saber sem ver o código. Mas na stacktrace acusa o seguinte erro: TypeError: an integer is required (got type str). Ou seja, um inteiro (int) é requerido mas recebeu tipo string. Chuto que pode ser no id.

Se não encontrar, poste o código de dao.py e jogoteca.py aqui pra ficar mais fácil de saber o que pode estar acontecendo.