NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze – Lekce 4 - Kalkulačka v Django frameworku

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
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!

 
Odpovědět
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.

 
Odpovědět
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

 
Odpovědět
14.7.2021 16:08
Avatar
Richard Tichý
Tvůrce
Avatar
Odpovídá 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?

Odpovědět
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"

 
Odpovědět
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

 
Odpovědět
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.

 
Odpovědět
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))
 
Odpovědět
13.6.2023 9:19
Avatar
Jaroslav Kučera:15.6.2023 18:10

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

 
Odpovědět
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' ?

 
Odpovědět
6.8.2023 13:16
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 27.