Zarábaj až 6 000 € mesačne! Akreditované rekvalifikačné kurzy od 0 €. Viac informácií.

Diskusia – 4. diel - Kalkulačka v Django frameworku

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Avatar
Stanislav Hrabovský:14.5.2018 11:40

Jsem velice rád, že tu někdo dělá Django. Těším se na další díl... DĚKUJI!

 
Odpovedať
14.5.2018 11:40
Avatar
Tomáš Kampán:18.8.2018 10:51

Autor to sice uvádí s vykřičníkem, ale na základě mých zkušeností to ještě zopakuji: ukládejte v UTF-8 a bacha na editor PSPad, který i po zvolení Formát>UTF-8 ukládá (občas) s kódováním produkujícím chybu.
Při uložení editorem Sublime Text 3 vše OK.

 
Odpovedať
18.8.2018 10:51
Avatar
Antonín Martykán:14.7.2021 16:08

Začíná mě z toho bolet hlava :-D
Jeden dotaz: soubor calculator/urls.py si importuje views a zavolá metodu kalkulacka. Ovšem ve views je metoda kalkulacka definovaná s parametrem request, který při jejím volání uveden není - jakým způsobem se předá tento parametr? A jak je možné, že pomocí dot-notation se skrze něj dostaneme k metodě request.POST, která je součástí HTML template? :-O

 
Odpovedať
14.7.2021 16:08
Avatar
Richard Tichý
Tvůrce
Avatar
Odpovedá na Antonín Martykán
Richard Tichý:7.9.2021 0:48

V urls.py nevoláme tu metodu, jen ji jakožto objekt předáváme jako parametr funkci path.
To druhé nechápu?

Odpovedať
7.9.2021 0:48
Když už něco rozděláš, měl bys to dokončit.
Avatar
Tomáš Balbinder:17.5.2022 22:15

na konci malo vysvetleni jak vlastne templates funguji. a byla tam chyba v kodu ale to se pak vyresilo. Tohle taky neni uplne 100 %?

if (float(reques­t.POST["b"]) == 0 and request.POST["o­perator"] == "/"):
error_msg = "Chyba dělení nulou"

 
Odpovedať
17.5.2022 22:15
Avatar
Filip Mazúr
Člen
Avatar
Filip Mazúr:24.1.2023 13:34

Nefunguje mi ani můj kod , ani ten který jsem stáhnul :D

 
Odpovedať
24.1.2023 13:34
Avatar
Anton Glavatchi:24.3.2023 9:39

Moc pěkně napsaný článek, jen mi chybí podrobnější vysvětlení HTML šablony nebo případný odkaz na jiný článek rozebírající tuto problematiku.

 
Odpovedať
24.3.2023 9:39
Avatar
Vašek Doškář:13.6.2023 9:19

Stačí ve View jednoduše změnit název html šablony z calculator/kal­kulacka.html na samotné kalkulacka.html a vše bude fungovat :)

def kalkulacka(request):
    error_msg = None
    vysledek = None
    if request.method == "POST":
        try:
            float(request.POST["a"])
            float(request.POST["b"])
        except:
            error_msg = "A nebo B není číslo!"
            return render(request, "kalkulacka.html", dict(error_msg=error_msg, vysledek=vysledek))

        if request.POST["operator"] == "/" and float(request.POST["b"]) == 0:
            error_msg = "Chyba dělení nulou"
            return render(request, "kalkulacka.html", dict(error_msg=error_msg, vysledek=vysledek))
        if request.POST["operator"] == "+":
            vysledek = models.secti(request.POST["a"], request.POST["b"])
        elif request.POST["operator"] == "-":
            vysledek = models.odecti(request.POST["a"], request.POST["b"])
        elif request.POST["operator"] == "/":
            vysledek = models.vydel(request.POST["a"], request.POST["b"])
        elif request.POST["operator"] == "*":
            vysledek = models.vynasob(request.POST["a"], request.POST["b"])
        else:
            error_msg = "Něco se pokazilo :("
            return render(request, "kalkulacka.html", dict(error_msg=error_msg, vysledek=vysledek))
    return render(request, "kalkulacka.html", dict(error_msg=error_msg, vysledek=vysledek))
Odpovedať
13.6.2023 9:19
Bez cíle není úspěchu.
Avatar
Jaroslav Kučera:15.6.2023 18:10

Popis všech použitých metod a propojení si tedy máme vyzkoumat sami ?

 
Odpovedať
15.6.2023 18:10
Avatar
Tim bl
Člen
Avatar
Tim bl:6.8.2023 13:16

Proč se mi furt spousti aplikace 'ahoj_svete' ?

 
Odpovedať
6.8.2023 13:16
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zatiaľ nikto nevložil komentár - buď prvý!