Pycharm предупреждает о неожиданном типе в модели SqlAlchemy

В модели SqlAlchemy я получаю предупреждение от pycharm о том, что столбец имеет неожиданный тип.

Упрощенный код, который выдает следующее предупреждение:

from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column, Integer, String

Base = declarative_base()

class Peptide(Base):
    __tablename__ = 'peptides'

    sequence = Column(String, primary_key=True)
    scan = Column(Integer)

    def __init__(self, scan, sequence):
        self.scan = scan
        self.sequence = sequence

    def __repr__(self):
        return '<Peptide "%s" Scan %i>' % (self.sequence, self.scan)

Предупреждение выдается для self.scan в методе __ repr __ . Если я изменю строку формата на:

  return '<Peptide "%s" Scan %s>' % (self.sequence, self.scan)

, предупреждение исчезнет. Но на самом деле self.scan был определен в модели как целое число, а не как строка. Удивительно, но следующая строка не вызывает никаких предупреждений:

  return '<Scan %i>' % self.scan

Это чрезмерная реакция средства проверки pycharm или что-то связано с типами SqlAlchemy?

7
задан joaquin 7 July 2011 в 17:37
поделиться