Flask SQLAlchemy: ошибка атрибута - PullRequest
0 голосов
/ 20 мая 2018

Я пытаюсь вставить некоторые значения в свою базу данных с помощью Flask Restful.Я использую PyMysql с Flask SQlAlchemy для подключения к базе данных, но когда я вставляю, я получаю

AttributeError: 'function' object has no attribute 'translate'

, когда я

db.session.add(self)
db.session.commit()

Ошибка

File "/home/yung/Documents/Projects/Crowlabs/Projects/churchify/venv/lib/python2.7/site-packages/pymysql/converters.py", line 73, in _escape_unicode

def _escape_unicode(value, mapping=None):
    """escapes *value* without adding quote.

    Value should be unicode
    """
    return value.translate(_escape_table)

    if PY2:
        def escape_string(value, mapping=None):
            """escape_string escapes *value* but not surround it with quotes.

Мой код

from db import db

class Test(db.Model):
    __tablename__       = "auth_test"

    id                  = db.Column(db.Integer, primary_key=True)
    username            = db.Column(db.Text)
    password            = db.Column(db.Text)
    email               = db.Column(db.Text)
    type                = db.Column(db.Text)

    def __init__(self, username, password, email, type_):
        self.username       = username
        self.password       = password
        self.email          = email
        self.type           = type_

        db.session.add(self)
        db.session.commit()

Это происходит, только когда я пытаюсь вставить в базу данных, но при извлечении она работает хорошо

1 Ответ

0 голосов
/ 22 мая 2018

Итак, я наконец-то понял.Pymysql ожидал строковое значение для одного из моих значений, пока я использовал целочисленное значение, поэтому я преобразовал значения в строку, используя

str()

И это сработало

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...