μκ°λνκ΅ κ°μ€κ΅κ³Όλͺ© μ 보 μ‘°ν μλΉμ€μ λ°±μλ μλ² μ λλ€.
νμ μκ°νλ₯Ό μ§κΈ° μ , μκ°μ μ²μ νκΈ° μ λ€μ΄κ°λ 'κ°μ€κ΅κ³Όλͺ©μ 보 μ¬μ΄νΈ'λ₯Ό μ¬μ©νλ©° λκΌλ λ¬Έμ μ λ€μ μ‘°κΈμ΄λλ§ κ°μ νκΈ° μν΄ μμνκ² λ μλΉμ€μ λλ€.
μ¬λ¬ REST APIλ₯Ό μ 곡νκ³ μμ΅λλ€.
Git | Docker |
Python | Flask | Swagger | Linux | AWS EC2 | JWT |
MySQL | AWS RDS |
Python | Pandas | Selenium | BeautifulSoup |
functional structure ꡬ쑰λ₯Ό μ¬μ©νμ¬ μ΄λ€ λμμ νλμ§μ λ°λΌ νμΌ κ΅¬μ‘°λ₯Ό ꡬλΆνμμ΅λλ€.
We used functional structure to organize the files of the project by what they do.
.
βββ app
β βββ __init__.py
β βββ main
β β βββ config.py
β β βββ controller
β β β βββ __init__.py
β β βββ __init__.py
β β βββ model
β β β βββ __init__.py
β β βββ service
β β βββ __init__.py
β βββ test
β βββ __init__.py
βββ manage.py
βββ requirements.txt
μ¬μ©ν ν¨ν€μ§λ€μ requirements.txt
μ μ μΈλμ΄ μμ΅λλ€.
pip install -r requirements.txt
here is an example:
import os
host_name = 'yourhostname.com'
username = "name"
password = "password"
database_name = "your database name"
base_dir = os.path.abspath(os.path.dirname(__file__))
class Config(object):
SECRET_KEY = 'your secret key'
algo = 'HS256'
DEBUG = False
class DevelopmentConfig(Config):
SQLALCHEMY_DATABASE_URI = 'your databae url'
DEBUG = True
SQLALCHEMY_TRACK_MODIFICATIONS = False
class ProductionConfig(Config):
SQLALCHEMY_DATABASE_URI = 'your database url'
DEBUG = False
SQLALCHEMY_TRACK_MODIFICATIONS = False
config_by_name = dict(
dev=DevelopmentConfig,
prod=ProductionConfig,
)
key = Config.SECRET_KEY
algorithm = Config.algo
mailConfig = ['[email protected]','email-password']
# $(pwd) = project root directory
docker build -t yourdockerusername/dockerfilename .
docker run -dp 5000:5000 yourdockerusername/dockerfilename
- Create account
- Request Secret Code to User Email
- Confirm Secret Code
- Login
- Logout
- Search User Email
- Password Reset
- Password Change
- User withdrawal
- Get User Favorite Subjects
- Register Favorite subjects
- Get User completed subjects
- Register completed subjects
- Delete Favorite Subjects
- Delete Completed Subjects
- Send report(Q&A) to our team
- Search all Subjects
- Search all Department at Selected Semester
- Search all Subjects by Search Options
- Search Updated Time