Add docs for IPAddressType

This commit is contained in:
Konsta Vesterinen
2014-03-27 14:16:33 +02:00
parent 617f41cc1b
commit 981b3a7ebd
2 changed files with 34 additions and 1 deletions

View File

@@ -56,7 +56,7 @@ class CountryType(types.TypeDecorator, ScalarCoercible):
user = User()
user.working_days = Country('FI')
user.country = Country('FI')
session.add(user)
session.commit()
@@ -64,6 +64,13 @@ class CountryType(types.TypeDecorator, ScalarCoercible):
user.country.name # Finland
print user.country # Finland
CountryType is scalar coercible::
user.country = 'US'
user.country # Country('US')
"""
impl = types.String(2)
python_type = Country

View File

@@ -19,6 +19,32 @@ class IPAddressType(types.TypeDecorator, ScalarCoercible):
"""
Changes IPAddress objects to a string representation on the way in and
changes them back to IPAddress objects on the way out.
IPAddressType uses ipaddress package on Python >= 3 and ipaddr_ package on
Python 2. In order to use IPAddressType with python you need to install
ipaddr_ first.
.. _ipaddr: https://pypi.python.org/pypi/ipaddr
::
from sqlalchemy_utils import IPAddressType
class User(Base):
__tablename__ = 'user'
id = sa.Column(sa.Integer, autoincrement=True)
name = sa.Column(sa.Unicode(255))
ip_address = sa.Column(IPAddressType)
user = User()
user.ip_address = '123.123.123.123'
session.add(user)
session.commit()
user.ip_address # IPAddress object
"""
impl = types.Unicode(50)