Skip to content

Commit 0785ed5

Browse files
committed
Remaining models defined.
1 parent 5fc2d5e commit 0785ed5

File tree

8 files changed

+105
-3
lines changed

8 files changed

+105
-3
lines changed
Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,19 @@
1-
# noinspection PyUnresolvedReferences
2-
from pypi.data.packages import Package
1+
# Add all your SQLAlchemy models here.
2+
# This allows us to import just this file when
3+
# we need to preload the models and ensure they
4+
# are all loaded.
35

4-
# And all the others we define...
6+
# noinspection PyUnresolvedReferences
7+
import pypi.data.downloads
8+
# noinspection PyUnresolvedReferences
9+
import pypi.data.languages
10+
# noinspection PyUnresolvedReferences
11+
import pypi.data.licenses
12+
# noinspection PyUnresolvedReferences
13+
import pypi.data.maintainers
14+
# noinspection PyUnresolvedReferences
15+
import pypi.data.packages
16+
# noinspection PyUnresolvedReferences
17+
import pypi.data.releases
18+
# noinspection PyUnresolvedReferences
19+
import pypi.data.users
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
import datetime
2+
import sqlalchemy
3+
from pypi.data.modelbase import SqlAlchemyBase
4+
5+
6+
class Download(SqlAlchemyBase):
7+
__tablename__ = 'downloads'
8+
9+
id = sqlalchemy.Column(sqlalchemy.BigInteger, primary_key=True, autoincrement=True)
10+
created_date = sqlalchemy.Column(sqlalchemy.DateTime, default=datetime.datetime.now, index=True)
11+
12+
package_id = sqlalchemy.Column(sqlalchemy.String, index=True)
13+
release_id = sqlalchemy.Column(sqlalchemy.BigInteger, index=True)
14+
15+
ip_address = sqlalchemy.Column(sqlalchemy.String)
16+
user_agent = sqlalchemy.Column(sqlalchemy.String)
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
import datetime
2+
import sqlalchemy
3+
from pypi.data.modelbase import SqlAlchemyBase
4+
5+
6+
class ProgrammingLanguage(SqlAlchemyBase):
7+
__tablename__ = 'languages'
8+
9+
id = sqlalchemy.Column(sqlalchemy.String, primary_key=True)
10+
created_date = sqlalchemy.Column(sqlalchemy.DateTime, default=datetime.datetime.now, index=True)
11+
description = sqlalchemy.Column(sqlalchemy.String)
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
import datetime
2+
import sqlalchemy
3+
from pypi.data.modelbase import SqlAlchemyBase
4+
5+
6+
class License(SqlAlchemyBase):
7+
__tablename__ = 'licenses'
8+
9+
id = sqlalchemy.Column(sqlalchemy.String, primary_key=True)
10+
created_date = sqlalchemy.Column(sqlalchemy.DateTime, default=datetime.datetime.now, index=True)
11+
description = sqlalchemy.Column(sqlalchemy.String)
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
import sqlalchemy
2+
from pypi.data.modelbase import SqlAlchemyBase
3+
4+
5+
class Maintainer(SqlAlchemyBase):
6+
__tablename__ = 'maintainers'
7+
8+
user_id = sqlalchemy.Column(sqlalchemy.Integer, primary_key=True)
9+
package_id = sqlalchemy.Column(sqlalchemy.String, primary_key=True)
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
import datetime
2+
import sqlalchemy
3+
from sqlalchemy import orm
4+
from pypi.data.modelbase import SqlAlchemyBase
5+
6+
7+
class Release(SqlAlchemyBase):
8+
__tablename__ = 'releases'
9+
10+
id = sqlalchemy.Column(sqlalchemy.Integer, primary_key=True, autoincrement=True)
11+
12+
major_ver = sqlalchemy.Column(sqlalchemy.BigInteger, index=True)
13+
minor_ver = sqlalchemy.Column(sqlalchemy.BigInteger, index=True)
14+
build_ver = sqlalchemy.Column(sqlalchemy.BigInteger, index=True)
15+
16+
created_date = sqlalchemy.Column(sqlalchemy.DateTime, default=datetime.datetime.now, index=True)
17+
comment = sqlalchemy.Column(sqlalchemy.String)
18+
url = sqlalchemy.Column(sqlalchemy.String)
19+
size = sqlalchemy.Column(sqlalchemy.BigInteger)
20+
21+
# Package relationship
22+
23+
@property
24+
def version_text(self):
25+
return '{}.{}.{}'.format(self.major_ver, self.minor_ver, self.build_ver)
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
import datetime
2+
import sqlalchemy
3+
from pypi.data.modelbase import SqlAlchemyBase
4+
5+
6+
class User(SqlAlchemyBase):
7+
__tablename__ = 'users'
8+
9+
id = sqlalchemy.Column(sqlalchemy.Integer, primary_key=True, autoincrement=True)
10+
name = sqlalchemy.Column(sqlalchemy.String, nullable=True)
11+
email = sqlalchemy.Column(sqlalchemy.String, index=True, nullable=True)
12+
hashed_password = sqlalchemy.Column(sqlalchemy.String, nullable=True, index=True)
13+
created_date = sqlalchemy.Column(sqlalchemy.DateTime, default=datetime.datetime.now, index=True)
14+
profile_image_url = sqlalchemy.Column(sqlalchemy.String)
15+
last_login = sqlalchemy.Column(sqlalchemy.DateTime, default=datetime.datetime.now, index=True)
100 KB
Binary file not shown.

0 commit comments

Comments
 (0)