Diskuze: Vysvetleni kodu z tutorialu

Člen

Zobrazeno 8 zpráv z 8.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |


def pridejUzivatele(self, jmeno, vek, registrovan):
u = Uzivatel(jmeno, vek, registrovan) # vytvori instanci tridy Uzivatel se zadanym jmenem a datem
# self je v pythonu zpusob jak se odkazovat na instanci tridy, ke ktere ta promenna uzivatel patri, tj. instance tridy Databaze
self.uzivatele.append(u)
Pouziti toho kodu bude zrejme takove:
db = Databaze()
db.pridejUzivatele('Jan', 'Novak', 'nejaky datum')
Jinak takovy detail smerem k tvurci tutorialu, dle stylistickych pravidel pythonu by se funkce, metody a promenne mely psat malymi pismeny se slovy oddelenymi podtrzitkem.
Dekuji za ochotu vysvetlit ale proc se musi vytvorit trida Uzivatel. Proc by nemohli tyhle atriuity byt(vek, jmeno, registeovan) primo ve tride databaze tohle mi neni jasny. Proc se proste musela vytvorit trida Uzivatel. Dekuji
Teoreticky by sis mohl mit v ramci databaze misto seznamu objektu, seznam slovniku, seznam seznamu, apod.
def pridejUzivatele(self, jmeno, vek, registrovan):
self.uzivatele.append({'jmeno': jmeno, 'vek':vek, 'registrovan': registrovan})
Ale pokud bys chtel mit treba pro uzivatele definovane nejake metody, jako treba tady je predefinovana metoda __str__, ktera rika jak bude vypadat vystup, kdyz pouzijes pro instanci u prikaz print(u), tak je objektovy pristup prehlednejsi.
Jinak u backendovych frameworku jako je Django nebo Flask, mas nekde
databazi, ke ktery se pripojis. Ten objekt, ktery to pripojeni zprostredkovava
ma sve metody na pridavani, mazani, upravovani veci v databazi. Ty mas napr.
nadefinovane tridy Uzivatel (pro uzivatelsky ucet), Post (pro prispevky).Tyto
tridy maji nejake svoje atributy, ktere se pak pres to spojeni s databazi
definovanym zpusobem prenaseji do samotne databaze.
Je proto asi vhodne ucit se to nejakym prakticky pouzivanym zpusobem, i kdyz
existuje spousta jinych moznosti.
Pavle diky za vysvetlebi do jiste miry si mi to vysvetlil a spis potvrdil. Ale porad jeste chyby vysvetleni proc se musela vytvorit trida Uzivatel() protpze kdyz udelam instanci tridy Uzivatel dejme tomu a =Uzivatel(argumenty) tak se do databaze neprida. Vytvori se pouze objekt neboki instance trida Uzivatel. Jesze jinak se zeptat proc je napred vytvorena trida Uzivatel a pak je pouzita v databazi
Predstav si to jako v realnym svete, nejdriv vytvoris formular (definice
tridy), pak ho vyplnis (instance tridy, objekt) a pak ho zalozis do kartoteky
(databaze).
Dokud nevis jak ma trida vypada, nemuzes ji instancovat, dokud ji neinstancujes,
nemuzes ji vlozit do databaze.
Diky konecne
davam fajku
dekuji Pavle
Zobrazeno 8 zpráv z 8.