with tutorial framework español djangoproject desde con cero applications python sqlalchemy pyramid

python - framework - tutorial django



AttributeError: el objeto ''InstrumentedList'' no tiene ningún atributo (1)

Como se explica en la documentación, aquí: http://www.sqlalchemy.org/docs/orm/relationships.html#one-to-one , debe agregar uselist = False no a la relación, sino al backref.

thing = relationship(''Thing'', backref=backref(''voteinfo'', uselist=False))

Tengo estas tablas de tablas:

class Thing(Base): __tablename__ = ''thing'' id = Column(Integer, primary_key=True) class User(Base): __tablename__ = ''user'' id = Column(Integer, primary_key=True) class Voteinfo(Base): __tablename__ = ''voteinfo'' thing_id = Column(Integer, ForeignKey(''thing.id''), primary_key=True) thing = relationship(''Thing'', backref=''voteinfo'') upvotes = Column(Integer) downvotes = Column(Integer) def __init__(self, thing) self.thing = thing class VoteThing(Base): __tablename__ = ''votething'' id = Column(Integer, primary_key=True) voter_id = Column(Integer, ForeignKey(''voter.id'')) voter = relationship(''Voter'', backref=''votescast'') thing_id = Column(Integer, ForeignKey(''thing.id'')) thing = relationship(''Thing'', backref=''votesreceived'') value = Column(Boolean) def __init__(self, voter, thing, value): if value is True: thing.voteinfo.upvotes += 1 else: thing.voteinfo.downvotes += 1

Cuando intento ejecutar esto, obtengo este código de error en la cláusula "if value is True":

AttributeError: ''InstrumentedList'' object has no attribute ''upvotes''

Intenté darle a Voteinfo su propia identificación única y agregarle a la relación uselist = False. He intentado reemplazar la relación con cosas de VoteThing a Voteinfo, pero eso tampoco ayudó. No sé lo que es una Lista Instrumentada. Que esta pasando?