Closed klaratravnik closed 1 year ago
Živjo,
našel sem način, kako zaobiti težavo. Bottle nikakor noče datuma (stringa) dati v url in ga zato pošilja kot parameter. V app.py
boste morali dodati funkcijo, ki sprejme datum in ga redirecta na pravilen url (v funkcijo termin_ura
).
@get('/termin/<id_storitev:int>/<id_usluzbenec:int>/')
def termin_date_conversion(id_usluzbenec, id_storitev):
datum = request.query.datum # dobimo datum iz urlja
year = datum[0:4]
month = datum[5:7]
day = datum[8:10]
# redirect na termin_ura s pravilno oblikovanim datumom
return redirect(url('termin_ura', id_usluzbenec=id_usluzbenec, id_storitev=id_storitev, year=year, month=month, day=day))
Funkcijo termin_ura
bo treba spremeniti, tako da dobi prave parametre:
@get('/termin/<id_storitev:int>/<id_usluzbenec:int>/<year:int>-<month:int>-<day:int>')
#@cookie_required
def termin_ura(id_usluzbenec, id_storitev, year, month, day):
datum = f"{year}-{month}-{day}" # nastavimo parameter datum
cur.execute("""
select
t.datum::time zacetek, t.datum::time + (s.trajanje * interval '1 Minute' ) konec
from termin1 t
...
V termin.html
bo treba spremeniti še redirect:
<form action="{{url('termin_date_conversion', id_usluzbenec=id_usluzbenec, id_storitev=id_storitev, datum=datum)}}" method="GET">
Najbrž obstaja bolj eleganten način za rešitev tega problema, ampak ga vsaj zaenkrat nisem našel.
Najlepša hvala za pomoč, je uspelo :)
Pozdravljena,
danes smo že vprašali glede datuma, ki se nam noče lepo zapisati v url v html-ju 'termin.html'. Formo v html-ju smo zdaj spremenile, da se kliče s funkcijo url, ampak nam še vedno ne dela. Datum se zapiše kot /?datum=2023-06-20 in zato ne preusmeri na željeno stran. Mislim, da je težava v funkciji termin_stranka v app.py, kjer datum v return template kličemo kot datum='', vendar nevemo, kako bi to drugače naredili.
Hvala za pomoč, Klara