Skip to content

Commit 0b0483d

Browse files
committed
add settings
1 parent e10c651 commit 0b0483d

File tree

5 files changed

+24
-16
lines changed

5 files changed

+24
-16
lines changed

.env

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,14 @@ REFRESH_TOKEN_EXPIRES_IN=60
99
JWT_ALGORITHM=RS256
1010

1111
CLIENT_ORIGIN=http://localhost:3000
12+
PASSWORD_MIN_LEN=4
1213

13-
EMAIL_HOST=smtp.mailtrap.io
14+
EMAIL_HOST=live.smtp.mailtrap.io
1415
EMAIL_PORT=587
1516
EMAIL_USERNAME=41fa1d7c714ab0
1617
EMAIL_PASSWORD=608f76636315f5
1718
EMAIL_FROM=admin@admin.com
19+
EMAIL_STARTTLS=True
1820

1921
JWT_PRIVATE_KEY=LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlCT2dJQkFBSkJBSSs3QnZUS0FWdHVQYzEzbEFkVk94TlVmcWxzMm1SVmlQWlJyVFpjd3l4RVhVRGpNaFZuCi9KVHRsd3h2a281T0pBQ1k3dVE0T09wODdiM3NOU3ZNd2xNQ0F3RUFBUUpBYm5LaENOQ0dOSFZGaHJPQ0RCU0IKdmZ2ckRWUzVpZXAwd2h2SGlBUEdjeWV6bjd0U2RweUZ0NEU0QTNXT3VQOXhqenNjTFZyb1pzRmVMUWlqT1JhUwp3UUloQU84MWl2b21iVGhjRkltTFZPbU16Vk52TGxWTW02WE5iS3B4bGh4TlpUTmhBaUVBbWRISlpGM3haWFE0Cm15QnNCeEhLQ3JqOTF6bVFxU0E4bHUvT1ZNTDNSak1DSVFEbDJxOUdtN0lMbS85b0EyaCtXdnZabGxZUlJPR3oKT21lV2lEclR5MUxaUVFJZ2ZGYUlaUWxMU0tkWjJvdXF4MHdwOWVEejBEWklLVzVWaSt6czdMZHRDdUVDSUVGYwo3d21VZ3pPblpzbnU1clBsTDJjZldLTGhFbWwrUVFzOCtkMFBGdXlnCi0tLS0tRU5EIFJTQSBQUklWQVRFIEtFWS0tLS0t
2022
JWT_PUBLIC_KEY=LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUZ3d0RRWUpLb1pJaHZjTkFRRUJCUUFEU3dBd1NBSkJBSSs3QnZUS0FWdHVQYzEzbEFkVk94TlVmcWxzMm1SVgppUFpSclRaY3d5eEVYVURqTWhWbi9KVHRsd3h2a281T0pBQ1k3dVE0T09wODdiM3NOU3ZNd2xNQ0F3RUFBUT09Ci0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQ==

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
11
__pycache__
22
venv/
3-
# .env
3+
# .env
4+
.history
5+
.vscode

app/config.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,14 @@ class Settings(BaseSettings):
1313

1414
CLIENT_ORIGIN: str
1515

16+
PASSWORD_MIN_LEN: int
17+
1618
EMAIL_HOST: str
1719
EMAIL_PORT: int
1820
EMAIL_USERNAME: str
1921
EMAIL_PASSWORD: str
2022
EMAIL_FROM: EmailStr
23+
EMAIL_STARTTLS: bool
2124

2225
class Config:
2326
env_file = './.env'

app/email.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ async def sendMail(self, subject, template):
3131
MAIL_FROM=settings.EMAIL_FROM,
3232
MAIL_PORT=settings.EMAIL_PORT,
3333
MAIL_SERVER=settings.EMAIL_HOST,
34-
MAIL_STARTTLS=False,
34+
MAIL_STARTTLS=settings.EMAIL_STARTTLS,
3535
MAIL_SSL_TLS=False,
3636
USE_CREDENTIALS=True,
3737
VALIDATE_CERTS=True

app/schemas.py

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,29 +2,30 @@
22
from typing import List
33
from pydantic import BaseModel, EmailStr, constr
44
from bson.objectid import ObjectId
5+
from .config import settings
56

67

78
class UserBaseSchema(BaseModel):
89
name: str
910
email: str
1011
photo: str
11-
role: str | None = None
12-
created_at: datetime | None = None
13-
updated_at: datetime | None = None
12+
role: str = None
13+
created_at: datetime = None
14+
updated_at: datetime = None
1415

1516
class Config:
1617
orm_mode = True
1718

1819

1920
class CreateUserSchema(UserBaseSchema):
20-
password: constr(min_length=8)
21+
password: constr(min_length=settings.PASSWORD_MIN_LEN)
2122
passwordConfirm: str
2223
verified: bool = False
2324

2425

2526
class LoginUserSchema(BaseModel):
2627
email: EmailStr
27-
password: constr(min_length=8)
28+
password: constr(min_length=settings.PASSWORD_MIN_LEN)
2829

2930

3031
class UserResponseSchema(UserBaseSchema):
@@ -46,8 +47,8 @@ class PostBaseSchema(BaseModel):
4647
content: str
4748
category: str
4849
image: str
49-
created_at: datetime | None = None
50-
updated_at: datetime | None = None
50+
created_at: datetime = None
51+
updated_at: datetime = None
5152

5253
class Config:
5354
orm_mode = True
@@ -57,7 +58,7 @@ class Config:
5758

5859

5960
class CreatePostSchema(PostBaseSchema):
60-
user: ObjectId | None = None
61+
user: ObjectId = None
6162
pass
6263

6364

@@ -69,11 +70,11 @@ class PostResponse(PostBaseSchema):
6970

7071

7172
class UpdatePostSchema(BaseModel):
72-
title: str | None = None
73-
content: str | None = None
74-
category: str | None = None
75-
image: str | None = None
76-
user: str | None = None
73+
title: str = None
74+
content: str = None
75+
category: str = None
76+
image: str = None
77+
user: str = None
7778

7879
class Config:
7980
orm_mode = True

0 commit comments

Comments
 (0)