Skip to content

Commit 847487a

Browse files
committed
Refactor sqlalchemy functions
1 parent 4acbb9b commit 847487a

File tree

1 file changed

+8
-10
lines changed

1 file changed

+8
-10
lines changed

labconnect/main/profile_routes.py

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
from flask import Response, jsonify, request
22
from flask_jwt_extended import get_jwt_identity, jwt_required
33

4-
from sqlalchemy import select, delete
5-
64
from labconnect import db
75
from labconnect.models import Majors, RPIDepartments, User, UserDepartments, UserMajors
86

@@ -13,7 +11,7 @@ def user_to_dict(user: User) -> dict:
1311
"""Helper function to serialize User object data."""
1412
user_departments = (
1513
db.session.execute(
16-
select(UserDepartments.department_id).where(
14+
db.select(UserDepartments.department_id).where(
1715
UserDepartments.user_id == user.id
1816
)
1917
)
@@ -23,7 +21,7 @@ def user_to_dict(user: User) -> dict:
2321

2422
user_majors = (
2523
db.session.execute(
26-
select(UserMajors.major_code).where(UserMajors.user_id == user.id)
24+
db.select(UserMajors.major_code).where(UserMajors.user_id == user.id)
2725
)
2826
.scalars()
2927
.all()
@@ -50,7 +48,7 @@ def get_profile() -> Response:
5048
"""GET /profile: current user profile"""
5149
user_email = get_jwt_identity()
5250
user = db.session.execute(
53-
select(User).where(User.email == user_email)
51+
db.select(User).where(User.email == user_email)
5452
).scalar_one_or_none()
5553

5654
if not user:
@@ -65,7 +63,7 @@ def update_profile() -> Response:
6563
"""PUT /profile: Updates current user profile"""
6664
user_email = get_jwt_identity()
6765
user = db.session.execute(
68-
select(User).where(User.email == user_email)
66+
db.select(User).where(User.email == user_email)
6967
).scalar_one_or_none()
7068

7169
if not user:
@@ -85,13 +83,13 @@ def update_profile() -> Response:
8583

8684
if "departments" in json_data:
8785
db.session.execute(
88-
delete(UserDepartments).where(UserDepartments.user_id == user.id)
86+
db.delete(UserDepartments).where(UserDepartments.user_id == user.id)
8987
)
9088

9189
req_dept_ids = set(json_data["departments"])
9290
if req_dept_ids: # Only query if list is not empty
9391
valid_dept_ids = db.session.execute(
94-
select(RPIDepartments.id).where(
92+
db.select(RPIDepartments.id).where(
9593
RPIDepartments.id.in_(req_dept_ids)
9694
)
9795
).scalars().all()
@@ -102,13 +100,13 @@ def update_profile() -> Response:
102100

103101
if "majors" in json_data:
104102
db.session.execute(
105-
delete(UserMajors).where(UserMajors.user_id == user.id)
103+
db.delete(UserMajors).where(UserMajors.user_id == user.id)
106104
)
107105

108106
req_major_codes = set(json_data["majors"])
109107
if req_major_codes: # Only query if list is not empty
110108
valid_major_codes = db.session.execute(
111-
select(Majors.code).where(Majors.code.in_(req_major_codes))
109+
db.select(Majors.code).where(Majors.code.in_(req_major_codes))
112110
).scalars().all()
113111

114112
for major_code in valid_major_codes: # Add only the valid ones

0 commit comments

Comments
 (0)