PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Python getter и setter чрез @property в дефиницията на клас модел на SqlAlchemy:HOWTO

Можете да използвате hybrid_property .В този случай опростената версия на вашия код трябва да изглежда така:

from sqlalchemy.ext.hybrid import hybrid_property

class Transcriber(Base):
    __tablename__ = 'transcribers'
    __table_args__ = (
    UniqueConstraint('projectid', 'email'),
    )

    transcriberid = Column(Integer, primary_key=True, server_default=text("nextval('transcribers_transcriberid_seq'::regclass)"))
    projectid = Column(ForeignKey(u'projects.projectid', ondelete=u'CASCADE'), index=True)
    created = Column(DateTime, nullable=False, server_default=text("now()"))
    onwebsite = Column(Boolean, nullable=False, server_default=text("true"))

    _email = Column('email', Text, nullable=False)

    @hybrid_property
    def email(self):
        return self._email

    @email.setter
    def email(self, email):
        self._email = email



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Най-близък запис за поредица от дати

  2. Конфигуриране на Postgres в Grails

  3. Как да изчислим пълзящата средна в PostgreSQL

  4. Как да стартирате работа, създадена чрез pgagent в Postgres

  5. Как да направите ActiveRecord ThreadSafe