Привет, друзья! Недавно я решил попробовать использовать FastAPI для создания таблицы Employees в базе данных PostgreSQL․ Я выбрал FastAPI из-за его асинхронного подхода и возможности использования библиотеки SQLAlchemy для работы с базой данных․
Перед тем, как приступить к написанию кода, вам нужно установить необходимые зависимости․ Выполните следующую команду в вашем терминале для установки FastAPI, SQLAlchemy и драйвера для работы с PostgreSQL⁚
pip install fastapi sqlalchemy databases[postgresql]
Теперь, когда все зависимости установлены, я могу приступить к написанию кода для создания таблицы Employees․ Ниже приведен пример кода, который я использовал при создании своей таблицы⁚
main․py
from fastapi import FastAPI
from sqlalchemy import create_engine, MetaData, Table, Column, Integer, String
from databases import Database
app FastAPI
DATABASE_URL ″postgresql://your_username:your_password@localhost/your_database_name»
database Database(DATABASE_URL)
metadata MetaData
employees Table(
″employees″,
metadata,
Column(″id″, Integer, primary_keyTrue),
Column(″name″, String),
Column(″position″, String),
Column(″salary″, Integer),
)
@app․on_event(″startup″)
async def startup⁚
await database․connect
engine create_engine(DATABASE_URL)
metadata․create_all(bindengine)
@app․on_event(″shutdown″)
async def shutdown⁚
await database․disconnect
@app․post(″/employees»)
async def create_employee(name⁚ str, position⁚ str, salary⁚ int)⁚
query employees․insert․values(namename, positionposition, salarysalary)
return await database․execute(query)
После того, как вы скопируете этот код, вам нужно будет заменить ″your_username″, ″your_password″ и ″your_database_name″ на свои реальные данные для доступа к вашей базе данных PostgreSQL․
Создание таблицы происходит при запуске приложения․ Затем, при выполнении POST-запроса по адресу ″/employees», данные сотрудника сохраняются в базе данных․
Не забудьте импортировать необходимые модули в вашем приложении, и запустите его, используя команду⁚
uvicorn main⁚app —reload
Теперь вы можете попробовать отправить POST-запрос с данными сотрудника⁚
curl -X POST http://localhost:8000/employees -d ‘nameJohnDoenpositionDevelopernsalary5000’
Если таблицы Employees еще нет в вашей базе данных, она будет создана при запуске приложения․ Если таблица уже существует, она не будет пересоздаваться․
Вот и все! Теперь у вас есть полностью работающее приложение FastAPI, которое создает таблицу Employees в базе данных PostgreSQL при первом запуске и сохраняет данные сотрудников в этой таблице․
Я надеюсь, что мой опыт поможет вам начать использовать FastAPI для создания таблиц и работы с базой данных PostgreSQL․ Удачи!