Projekt

Obecné

Profil

« Předchozí | Další » 

Revize c0f38eab

Přidáno uživatelem Matěj Zeman před asi 2 roky(ů)

re #9429 Implemented funcionality for web views at data saved in database. Views at "/logs_web/", "/pcs_web/", "/devices_web/", "/licenses_web/".

Zobrazit rozdíly:

server/sql_app/api/usb_logs.py
3 3
from sqlalchemy.orm import Session
4 4
from ...sql_app import crud, models, schemas
5 5
from ..database import SessionLocal, engine
6
from fastapi import FastAPI, Request
7
from fastapi.responses import HTMLResponse
8
from fastapi.staticfiles import StaticFiles
9
from fastapi.templating import Jinja2Templates
6 10

  
7 11
models.Base.metadata.create_all(bind=engine)
12
templates = Jinja2Templates(directory="../templates/usb-logs")
8 13

  
9 14
usblogs = APIRouter()
10 15

  
......
18 23
        db.close()
19 24

  
20 25

  
26
@usblogs.get("/logs_web/", response_class=HTMLResponse)
27
async def read_logs(request: Request, skip: int = 0, limit: int = 100, db: Session = Depends(get_db)):
28
    logs = crud.get_logs(db, skip=skip, limit=limit)
29
    pcs = []
30
    for log in logs:
31
        if log.pc_id not in pcs:
32
            pcs.append(log.pc_id)
33
    return templates.TemplateResponse("logs.html", {"request": request, "logs": logs})
34

  
35

  
21 36
@usblogs.post("/usb-logs/", response_model=schemas.USBLog)
22 37
def create_device_logs(log: schemas.USBTempBase, db: Session = Depends(get_db)):
23 38
    dev = crud.find_device(db, log.device)

Také k dispozici: Unified diff