2014-05-09 7 views

Odpowiedz

5

ta została dodana do oficjalnej dokumentacji: https://bitbucket.org/zzzeek/sqlalchemy/issue/3046/postgresql-range-types-need-better


Gdyby kopać wokół tego, ale w razie wątpliwości należy sprawdzić testy! Model SQLAlchemy tests for the range types używa podrzędnego psycopg2 types.

from psycopg2.extras import NumericRange 
from sqlalchemy import create_engine, Column, Integer 
from sqlalchemy.dialects.postgresql import INT4RANGE 
from sqlalchemy.ext.declarative import declarative_base 
from sqlalchemy.orm import sessionmaker 

engine = create_engine('postgresql:///example', echo=True) 
Session = sessionmaker(bind=engine) 
session = Session() 
Base = declarative_base(bind=engine) 


class Example(Base): 
    __tablename__ = 'example' 

    id = Column(Integer, primary_key=True) 
    window = Column(INT4RANGE, nullable=False) 


Base.metadata.create_all() 

session.add(Example(window=NumericRange(2, 6))) 
session.add(Example(window=NumericRange(4, 8))) 
session.commit() 
Powiązane problemy