summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorPaul Brown <paul90brown@gmail.com>2017-03-17 00:24:15 -0500
committerMike Bayer <mike_mp@zzzcomputing.com>2017-03-18 14:42:48 -0400
commita40467152cbbc7e65d629dafbcc04ad1c85d3025 (patch)
treeae49a3e3abf0397ec8b7ea3fd8bad2d5b8414592 /examples
parent8dad0f93e8a7f1dcd79ff5c3640c997667d06248 (diff)
downloadsqlalchemy-a40467152cbbc7e65d629dafbcc04ad1c85d3025.tar.gz
fix pep8 errors in association example
(cherry picked from commit 6aad7fb4217ef294f68f693be5b3137c28184949)
Diffstat (limited to 'examples')
-rw-r--r--examples/association/__init__.py2
-rw-r--r--examples/association/basic_association.py16
-rw-r--r--examples/association/dict_of_sets_with_default.py13
-rw-r--r--examples/association/proxied_association.py22
4 files changed, 33 insertions, 20 deletions
diff --git a/examples/association/__init__.py b/examples/association/__init__.py
index 4cd64c22f..dc9593a0e 100644
--- a/examples/association/__init__.py
+++ b/examples/association/__init__.py
@@ -5,4 +5,4 @@ classes that are associated in a many-to-many pattern.
.. autosource::
-""" \ No newline at end of file
+"""
diff --git a/examples/association/basic_association.py b/examples/association/basic_association.py
index 8a8a54ad1..3835e44f2 100644
--- a/examples/association/basic_association.py
+++ b/examples/association/basic_association.py
@@ -14,13 +14,14 @@ of "items", with a particular price paid associated with each "item".
from datetime import datetime
-from sqlalchemy import (create_engine, MetaData, Table, Column, Integer,
- String, DateTime, Float, ForeignKey, and_)
-from sqlalchemy.orm import mapper, relationship, Session
+from sqlalchemy import (create_engine, Column, Integer, String, DateTime,
+ Float, ForeignKey, and_)
+from sqlalchemy.orm import relationship, Session
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
+
class Order(Base):
__tablename__ = 'order'
@@ -28,11 +29,12 @@ class Order(Base):
customer_name = Column(String(30), nullable=False)
order_date = Column(DateTime, nullable=False, default=datetime.now())
order_items = relationship("OrderItem", cascade="all, delete-orphan",
- backref='order')
+ backref='order')
def __init__(self, customer_name):
self.customer_name = customer_name
+
class Item(Base):
__tablename__ = 'item'
item_id = Column(Integer, primary_key=True)
@@ -45,8 +47,9 @@ class Item(Base):
def __repr__(self):
return 'Item(%r, %r)' % (
- self.description, self.price
- )
+ self.description, self.price
+ )
+
class OrderItem(Base):
__tablename__ = 'orderitem'
@@ -59,6 +62,7 @@ class OrderItem(Base):
self.price = price or item.price
item = relationship(Item, lazy='joined')
+
if __name__ == '__main__':
engine = create_engine('sqlite://')
Base.metadata.create_all(engine)
diff --git a/examples/association/dict_of_sets_with_default.py b/examples/association/dict_of_sets_with_default.py
index fc4aebfca..4f0ff462d 100644
--- a/examples/association/dict_of_sets_with_default.py
+++ b/examples/association/dict_of_sets_with_default.py
@@ -21,19 +21,24 @@ from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.ext.associationproxy import association_proxy
import operator
+
class Base(object):
id = Column(Integer, primary_key=True)
+
Base = declarative_base(cls=Base)
+
class GenDefaultCollection(MappedCollection):
def __missing__(self, key):
self[key] = b = B(key)
return b
+
class A(Base):
__tablename__ = "a"
- associations = relationship("B",
+ associations = relationship(
+ "B",
collection_class=lambda: GenDefaultCollection(operator.attrgetter("key"))
)
@@ -42,6 +47,7 @@ class A(Base):
association proxy of B.
"""
+
class B(Base):
__tablename__ = "b"
a_id = Column(Integer, ForeignKey("a.id"), nullable=False)
@@ -57,13 +63,16 @@ class B(Base):
if values:
self.values = values
+
class C(Base):
__tablename__ = "c"
b_id = Column(Integer, ForeignKey("b.id"), nullable=False)
value = Column(Integer)
+
def __init__(self, value):
self.value = value
+
if __name__ == '__main__':
engine = create_engine('sqlite://', echo=True)
Base.metadata.create_all(engine)
@@ -88,5 +97,3 @@ if __name__ == '__main__':
session.commit()
print(a1.collections["2"])
-
-
diff --git a/examples/association/proxied_association.py b/examples/association/proxied_association.py
index 7cb4c9338..d5d48819f 100644
--- a/examples/association/proxied_association.py
+++ b/examples/association/proxied_association.py
@@ -9,14 +9,15 @@ to ``OrderItem`` optional.
from datetime import datetime
-from sqlalchemy import (create_engine, MetaData, Table, Column, Integer,
- String, DateTime, Float, ForeignKey, and_)
-from sqlalchemy.orm import mapper, relationship, Session
+from sqlalchemy import (create_engine, Column, Integer, String, DateTime,
+ Float, ForeignKey)
+from sqlalchemy.orm import relationship, Session
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.ext.associationproxy import association_proxy
Base = declarative_base()
+
class Order(Base):
__tablename__ = 'order'
@@ -24,12 +25,13 @@ class Order(Base):
customer_name = Column(String(30), nullable=False)
order_date = Column(DateTime, nullable=False, default=datetime.now())
order_items = relationship("OrderItem", cascade="all, delete-orphan",
- backref='order')
+ backref='order')
items = association_proxy("order_items", "item")
def __init__(self, customer_name):
self.customer_name = customer_name
+
class Item(Base):
__tablename__ = 'item'
item_id = Column(Integer, primary_key=True)
@@ -41,9 +43,8 @@ class Item(Base):
self.price = price
def __repr__(self):
- return 'Item(%r, %r)' % (
- self.description, self.price
- )
+ return 'Item(%r, %r)' % (self.description, self.price)
+
class OrderItem(Base):
__tablename__ = 'orderitem'
@@ -56,6 +57,7 @@ class OrderItem(Base):
self.price = price or item.price
item = relationship(Item, lazy='joined')
+
if __name__ == '__main__':
engine = create_engine('sqlite://')
Base.metadata.create_all(engine)
@@ -99,7 +101,7 @@ if __name__ == '__main__':
# print customers who bought 'MySQL Crowbar' on sale
orders = session.query(Order).\
- join('order_items', 'item').\
- filter(Item.description == 'MySQL Crowbar').\
- filter(Item.price > OrderItem.price)
+ join('order_items', 'item').\
+ filter(Item.description == 'MySQL Crowbar').\
+ filter(Item.price > OrderItem.price)
print([o.customer_name for o in orders])