Нет значения для аргумента 'dml' в вызове метода - PullRequest
0 голосов
/ 04 января 2019

Я пытаюсь создать базу данных, в которой будет храниться информация истории на основе идентификатора.На данный момент я работаю над тем, чтобы поместить эту информацию в таблицы.Я учусь Python и SQL, как я иду, так что терпите меня здесь.

Pylint сообщает мне, что имеется следующая ошибка в отношении title.insert (), и я просто не могу понять, основываясь на документах, что мне здесь не хватает:

Нет значениядля аргумента 'dml' в вызове метода

from ao3 import AO3
api = AO3()
work = api.work(id='1234')

from sqlalchemy import create_engine
engine = create_engine('sqlite:///ficrec.db', echo=True)

from sqlalchemy import Table, Column, Integer, String, MetaData
metadata = MetaData()

title = Table('title', metadata,
    Column('id', Integer, primary_key=True),
    Column('title', String(256))
)
author = Table('author', metadata,
    Column('id', Integer, primary_key=True),
    Column('author', String(128))
)
ins = title.insert().values(id=work.id, title=work.title)

1 Ответ

0 голосов
/ 27 января 2019

У меня такая же проблема.По сути, для insert () требуется параметр, равный dml.Так как он не предоставлен, Pylint жалуется на ошибку, как показано ниже.

[pylint] No value for argument 'dml' in method call [E1120]

Не похоже, что есть проблема с функциональностью из-за отсутствия dml.Основываясь на краткой проверке исходного кода, dml генерируется декоратором

@util.dependencies("sqlalchemy.sql.dml")
def insert(self, dml, values=None, inline=False, **kwargs):
    """Generate an :func:`.insert` construct against this
    :class:`.TableClause`.

    E.g.::

        table.insert().values(name='foo')

    See :func:`.insert` for argument and usage information.

    """

    return dml.Insert(self, values=values, inline=inline, **kwargs)

Чтобы продолжить, в моем случае я передал значение None для insert () для NOW.Я не уверен, хорошая это идея или нет.Надеемся, что сообщество SQLAlchmey решит эту проблему.

Для вас попробуйте этот способ.

ins = title.insert (нет) .values ​​(id = work.id, title = work.title)

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