File tree Expand file tree Collapse file tree 3 files changed +12
-3
lines changed
src/ch9-sqlalchemy/final/pypi_sqlalchemy/pypi Expand file tree Collapse file tree 3 files changed +12
-3
lines changed Original file line number Diff line number Diff line change 11import datetime
22
33import sqlalchemy as sa
4+ import sqlalchemy .orm as orm
45from pypi .data .modelbase import SqlAlchemyBase
6+ from pypi .data .releases import Release
57
68
79class Package (SqlAlchemyBase ):
@@ -21,8 +23,11 @@ class Package(SqlAlchemyBase):
2123
2224 license = sa .Column (sa .String , index = True )
2325
24- # releases
25- # maintainers
26+ releases = orm .relation ("Release" , order_by = [
27+ Release .major_ver .desc (),
28+ Release .minor_ver .desc (),
29+ Release .build_ver .desc (),
30+ ], back_populates = 'package' )
2631
2732 def __repr__ (self ):
2833 return '<Package {}>' .format (self .id )
Original file line number Diff line number Diff line change 11import datetime
22import sqlalchemy
3- from sqlalchemy import orm
3+ import sqlalchemy . orm as orm
44from pypi .data .modelbase import SqlAlchemyBase
55
66
@@ -19,7 +19,11 @@ class Release(SqlAlchemyBase):
1919 size = sqlalchemy .Column (sqlalchemy .BigInteger )
2020
2121 # Package relationship
22+ package_id = sqlalchemy .Column (sqlalchemy .String , sqlalchemy .ForeignKey ('packages.id' ))
23+ package = orm .relation ('Package' , back_populates = 'releases' )
2224
2325 @property
2426 def version_text (self ):
2527 return '{}.{}.{}' .format (self .major_ver , self .minor_ver , self .build_ver )
28+
29+
You can’t perform that action at this time.
0 commit comments