Skip to content

Commit

Permalink
add relationship between models
Browse files Browse the repository at this point in the history
  • Loading branch information
wuttinanhi committed Oct 22, 2022
1 parent 22c56f2 commit d842d0d
Show file tree
Hide file tree
Showing 4 changed files with 20 additions and 25 deletions.
4 changes: 2 additions & 2 deletions car/model.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
from database import Base
from sqlalchemy import Column, Integer, String
from sqlalchemy import Column, ForeignKey, Integer, String


class Car(Base):
__tablename__ = "cars"

id = Column(Integer, primary_key=True)
car_owner_id = Column(Integer())
car_owner_id = Column(Integer(), ForeignKey("users.id"))
car_license_plate = Column(String(100), unique=True)
car_type = Column(String(100))

Expand Down
10 changes: 5 additions & 5 deletions chat/model.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,16 @@
from datetime import datetime

from database import Base
from sqlalchemy import Column, DateTime, Integer, String
from sqlalchemy import Column, DateTime, ForeignKey, Integer, String
from user.service import UserService


class Chat(Base):
__tablename__ = "chats"

id = Column(Integer(), primary_key=True)
from_user_id = Column(Integer(), nullable=False)
to_user_id = Column(Integer(), nullable=False)
from_user_id = Column(Integer(), ForeignKey("users.id"), nullable=False)
to_user_id = Column(Integer(), ForeignKey("users.id"), nullable=False)
message = Column(String(255), nullable=False)
send_date = Column(DateTime(), nullable=False)

Expand Down Expand Up @@ -47,8 +47,8 @@ class ChatHead(Base):
__tablename__ = "chat_heads"

id = Column(Integer(), primary_key=True)
user_id = Column(Integer(), nullable=False)
target_user_id = Column(Integer(), nullable=False)
user_id = Column(Integer(), ForeignKey("users.id"), nullable=False)
target_user_id = Column(Integer(), ForeignKey("users.id"), nullable=False)
last_update_date = Column(DateTime(), nullable=False)

def __init__(self, user_id: int, target_user_id: int, last_update=datetime.now()):
Expand Down
6 changes: 3 additions & 3 deletions payment/model.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
from datetime import datetime

from database import Base
from sqlalchemy import Column, DateTime, Enum, Float, Integer, String
from sqlalchemy import Column, DateTime, Enum, Float, ForeignKey, Integer, String


class InvoiceStatus(enum.Enum):
Expand All @@ -19,8 +19,8 @@ class Invoice(Base):
__tablename__ = "invoices"

id = Column(Integer(), primary_key=True)
user_id = Column(Integer(), nullable=False)
reservation_id = Column(Integer(), nullable=False)
user_id = Column(Integer(), ForeignKey("users.id"), nullable=False)
reservation_id = Column(Integer(), ForeignKey("reservations.id"), nullable=False)

create_date = Column(DateTime(), nullable=False)
stripe_payment_id = Column(String(100))
Expand Down
25 changes: 10 additions & 15 deletions reservation/model.py
Original file line number Diff line number Diff line change
@@ -1,38 +1,33 @@

import datetime

from database import Base
from sqlalchemy import Column, DateTime, Integer
from sqlalchemy import Column, DateTime, ForeignKey, Integer


class Reservation(Base):
__tablename__ = 'reservations'
__tablename__ = "reservations"

id = Column(Integer, primary_key=True)
user_id = Column(Integer())
car_id = Column(Integer())
parking_lot_id = Column(Integer())
user_id = Column(Integer(), ForeignKey("users.id"))
car_id = Column(Integer(), ForeignKey("cars.id"))
parking_lot_id = Column(Integer(), ForeignKey("parking_lots.id"))
start_time = Column(DateTime, nullable=False)
end_time = Column(DateTime)

def __init__(
self,
user_id: int,
car_id: int,
parking_lot_id: int,
start_time: datetime
self, user_id: int, car_id: int, parking_lot_id: int, start_time: datetime
):
self.user_id = user_id
self.car_id = car_id
self.parking_lot_id = parking_lot_id
self.start_time = start_time

def __repr__(self):
return f'<Reservation {self.id}>'
return f"<Reservation {self.id}>"

def json(self):
return {
'reservation_id': self.id,
'reservation_start_time': self.start_time,
'reservation_end_time': self.end_time
"reservation_id": self.id,
"reservation_start_time": self.start_time,
"reservation_end_time": self.end_time,
}

0 comments on commit d842d0d

Please sign in to comment.