[Musiikkia]
EZRA ZIGMOND: Hei, kaikille.
Kiitos kun tulit ulos tﺣ۳nﺣ۳ﺣ۳n.
Tﺣ۳mﺣ۳ seminaari on "Python Web-sovellukset kanssa pullo. "
>> Joten, aion puhuvan hieman siitﺣ۳, miksi
saatat haluta kﺣ۳yttﺣ۳ﺣ۳ pullon tehdﺣ۳ verkkosovelluksia Python, toisin
jossain muissa puitteissa siellﺣ۳, kuten Django, joka on parhaiten tunnettu.
Alaotsikko on "ja peewee ", joka on jotain
aiomme puhua siitﺣ۳, miten vuorovaikutuksessa SQL-tietokantoihin.
Se tekee todella mukavaa.
>> Joten, tﺣ۳ssﺣ۳ on vain nopea pilaantunut mitﺣ۳ haluan mennﺣ۳ yli.
Joten, ensimmﺣ۳inen, vain yksi levy ettﺣ۳ tulee olemaan Quickstart,
joka on, miten saada kaikki perustettu tietokoneellesi.
Aion esittelee tﺣ۳mﺣ۳ minun paikallinen Mac kone,
vain koska sieltﺣ۳ Olen tehnyt tﺣ۳mﺣ۳n ennen, olen eniten mukavalta,
mutta tﺣ۳mﺣ۳ on ehdottomasti mahdollista CD50 IDE.
>> Niin, sen jﺣ۳lkeen, haluan esitellﺣ۳ mitﺣ۳ pullo,
ja vakuuttaa teille, miksi sinun pitﺣ۳isi kﺣ۳yttﺣ۳ﺣ۳ sitﺣ۳ ensiksi.
Sitten minﺣ۳ annan nopeasti esimerkki siitﺣ۳, mitﺣ۳
voi tehdﺣ۳ pullo, nopea esimerkki mitﺣ۳ voit tehdﺣ۳ peewee,
ja sitten minﺣ۳ nﺣ۳ytﺣ۳n sinulle enemmﺣ۳n tﺣ۳ydellinen esimerkki hakemus
ettﺣ۳ olen koonnut ettﺣ۳ me kﺣ۳ydﺣ۳ lﺣ۳pi yhdessﺣ۳.
>> Ja sitten lopuksi, viimeisen dian, minulla on
joitakin resursseja ettﺣ۳ nﺣ۳ytﺣ۳t online lisﺣ۳tietoja.
Tﺣ۳mﺣ۳ ei ole tﺣ۳ydellinen opetusohjelma miten kﺣ۳yttﺣ۳ﺣ۳ pulloon.
Ja minﺣ۳ toivon lﺣ۳hteﺣ۳ jonkin aikaa kysymyksille.
Kukaan katsomassa paikallisesti, juuri kuten, huutaa keskellﺣ۳
jos sinulla on kysyttﺣ۳vﺣ۳ﺣ۳.
>> Joten nopea asennus tavaraa, jos haluat seurata pitkin,
tai jos haluat saada tﺣ۳mﺣ۳ up omalle koneellesi,
Aion kﺣ۳yttﺣ۳ﺣ۳ Python 2.7.10.
Pulloon tekee tyﺣﭘtﺣ۳ Python 3, mutta pidﺣ۳n
Python 2, koska siellﺣ۳ jotkut Python paketteja ettﺣ۳
eivﺣ۳t toimi 3 vielﺣ۳.
Jos olet PIP asennettu, joka on Python paketti johtaja,
Uskon, ettﺣ۳ jos Python on suurempi tai yhtﺣ۳ suuri kuin 2.7.9,
sinulla on se jo asennettu, se on Super helppo asentaa nﺣ۳mﺣ۳ paketit.
>> Voit tehdﺣ۳ PIP asentaa Pulloon, pip asentaa peewee,
yleensﺣ۳ sinun on suoritettava sudo vain niin, ettﺣ۳ kﺣ۳yttﺣﭘoikeudet treenata.
Ja, jos kﺣ۳ytﺣ۳t Super vanha versio Python,
Suosittelen pﺣ۳ivittﺣ۳ﺣ۳ Python, tai kﺣ۳yttﺣ۳mﺣ۳llﺣ۳ EasyInstall asentaa pip.
Joten, seuraava kysymys on, mikﺣ۳ on pullo?
Ja kai ensin kohtuullinen kysymys Ihmettelin
pitkﺣ۳ﺣ۳n on, mikﺣ۳ on verkkosovellus?
Koska se sana, jonka minﺣ۳ mielestﺣ۳ni heittﺣ۳ﺣ۳ noin paljon
ettﺣ۳ en todellakaan tiedﺣ۳.
Ja uskon, ettﺣ۳ paras esimerkki siitﺣ۳, mitﺣ۳ web-sovellus on,
todella on CS50 Finance, jossa se ei oikeastaan ﻗﻗvain verkkosivuilla,
mutta se on jotain, ettﺣ۳ olet voisi tavallaan vuorovaikutuksessa.
On kﺣ۳yttﺣ۳jﺣ۳tilejﺣ۳ ja kaikenlaisia ﻗﻗeri asioita.
Joten, missﺣ۳ tarkalleen piirrﺣ۳t linjan vﺣ۳lillﺣ۳, mitﺣ۳ on sivusto,
ja mikﺣ۳ on web-sovellus, on erﺣ۳ﺣ۳nlainen mielivaltainen, mutta luulisin ajatus,
se on jotain enemmﺣ۳n kuin verkkosivusto ja se on hyﺣﭘdyllinen sovellus.
>> Joten, taskumatti on kehys tehdﺣ۳ verkkosovelluksia kﺣ۳yttﺣ۳en Python.
Ja toivottavasti loppuun mennessﺣ۳ Tﺣ۳mﺣ۳n, aion vakuuttaa teille
ettﺣ۳ voit itse kirjoittaa jotain kuten CS50 Finance Python, jota
kuten paljon parempi kuin PHP, henkilﺣﭘkohtaisesti.
>> Joten, pullo, he kutsuvat microframework, jolla,
ne tarkoittavat sitﺣ۳ on hyvin yksinkertainen, mutta laajennettavissa.
Niin, se on vain mitﺣ۳ tarvitset, mutta jos haluat enemmﺣ۳n ominaisuuksia,
se on helppo tuoda ne.
Mutta vain koska se on microframework, ei
tarkoita, ettﺣ۳ se on vain pieniﺣ۳ hankkeita.
Minulla on yhteys tﺣ۳ﺣ۳llﺣ۳, jossa lukee ettﺣ۳ Obama kﺣ۳ytti pullo 2012
hﺣ۳nen kampanja verkkosivusto, joka toivottavasti,
on jotain merkintﺣ۳.
Mutta asia, ettﺣ۳ olen todella noin pullo
on, ettﺣ۳ se ei oikeastaan ﻗﻗtee minkﺣ۳ﺣ۳nlaista pﺣ۳ﺣ۳tﺣﭘksiﺣ۳ puolestasi.
Juuri siksi olemme puhumme verkkosovelluksia,
Minun tﺣ۳ytyy verrata sitﺣ۳ Ruby on Kiskot ja Django, jotka molemmat
ovat suuria puitteita, mutta he molemmat tekevﺣ۳t olettamuksia
miten haluat vuorovaikutuksessa tietokantoihin,
miten haluat esitellﺣ۳ nﺣ۳kemyksiﺣ۳, ja he varmasti
hyviﺣ۳ puolia siitﺣ۳.
>> Esimerkiksi, Ruby on Rails on tﺣ۳mﺣ۳ aktiivinen tallennusjﺣ۳rjestelmﺣ۳,
joka on todella mukava tapa vuorovaikutuksessa tietoihin,
mutta jos haluat kﺣ۳yttﺣ۳ﺣ۳ Ruby on Kiskot, olet erﺣ۳ﺣ۳nlainen sidottu tuohon.
Mutta taskumatti, kuten olen will nﺣ۳yttﺣ۳ﺣ۳ kanssa peewee,
voit kﺣ۳yttﺣ۳ﺣ۳ mitﺣ۳ tahansa jﺣ۳rjestﺣ۳ tietokannan haluat,
ja voit vain vetﺣ۳ﺣ۳, ettﺣ۳ jatkeena pulloon.
>> Joten siksi olen todella kuten pullo, se ettﺣ۳ se
ei tehdﺣ۳ oletuksia sinulle perustuvat asiat et tarvitse oikeastaan.
>> Joten, miksi sinun pitﺣ۳isi kﺣ۳yttﺣ۳ﺣ۳ pulloon?
Edut ovat, se vain on todella ydinominaisuudet
rakennettu siihen, ettﺣ۳ tarvitset.
Joten, sinun ei tarvitse huolehtia ymmﺣ۳rtﺣ۳minen koko joukko asioita
ettﺣ۳ et todellakaan tarvitse.
Sinun ei tarvitse huolehtia noin sammuttamalla ominaisuuksia
ettﺣ۳ et todellakaan tarvitse.
>> Ja, kuten mainitsin, se on erittﺣ۳in helppo lisﺣ۳tﺣ۳ laajennuksia asioita
ettﺣ۳ et tarvitse.
Jotkut heistﺣ۳, lasia on omat tukea.
Joten siellﺣ۳ on jotain kutsutaan pullo admin, mikﺣ۳ heijastaa ettﺣ۳ admin
paneeli, joka Django tarjoaa, joka antaa sinulle mukava visuaalinen tapa
hallinnoida sivustosi.
Mutta jﺣ۳lleen kerran, jos olet tehdﺣ۳ jotain yksinkertaista,
et todennﺣ۳kﺣﭘisesti tarvitse suurta admin paneeli, joten luulen ettﺣ۳ Super mukava.
Ja haitat ovat, ettﺣ۳ sinulla on vﺣ۳hemmﺣ۳n valtaa kﺣ۳ttelyssﺣ۳.
Joten, kun ensin avata pullo, ja Python-ohjelma,
te vain kirjoittaa pullosta tuonti *, tai mitﺣ۳ tahansa,
et tarkalleen saada kaikki ominaisuudet saatat haluta.
Ja niin sinun tﺣ۳ytyy selvemmin lista ominaisuuksia haluat.
Joten se on yksi haitta, mutta minﺣ۳ ajattelevat, ettﺣ۳ rakentamiseen pienet web
apps kuten aion nﺣ۳kyﺣ۳ te, se ei ole oikeastaan ﻗﻗongelma.
Ja mitﺣ۳ viimeinen asia on pitﺣ۳isi sanoa, mikﺣ۳ on kirjoitusvirhe,
on, ettﺣ۳ on vﺣ۳hemmﺣ۳n standardoituja yleissopimusten miten kﺣ۳yttﺣ۳ﺣ۳ pullo,
vain koska ei ole niin paljon ihmiset jotka kﺣ۳yttﺣ۳vﺣ۳t sitﺣ۳ ammattimaisesti
verrattuna Django.
Joten, jos tarkastellaan jotain, "Miten teen x" Django,
lﺣﭘydﺣ۳t todennﺣ۳kﺣﭘisesti se.
>> On hyvﺣ۳ suunnittelu kuvioita voit kﺣ۳yttﺣ۳ﺣ۳,
mutta pullo, se erﺣ۳ﺣ۳nlainen mennﺣ۳ omalla tavallasi,
vain koska se on melko pieni kirjasto.
Joten ne ovat haittoja, mutta mielestﺣ۳ni
ettﺣ۳ se on edelleen hyvﺣ۳ kirjasto kﺣ۳yttﺣ۳ﺣ۳.
>> Joten juuri hypﺣ۳tﺣ۳ suoraan pulloon.
Tﺣ۳mﺣ۳ ei todellakaan ole menossa olla tﺣ۳ydellinen opetusohjelma,
mutta se antaa sinulle kﺣ۳sityksen miten jﺣ۳sentﺣ۳ﺣ۳ asioita,
ja niin tunnet olosi mukavaksi menossa pois ja katsot asiakirjat
ja selvittﺣ۳ﺣ۳ enemmﺣ۳n.
>> Joten, anna minun avata todella Yksinkertainen esimerkki aluksi,
ja nﺣ۳yttﺣ۳ﺣ۳ mitﺣ۳ ettﺣ۳ nﺣ۳yttﺣ۳ﺣ۳, ja sitten me
murtaa se alas hieman.
>> Joten tﺣ۳ﺣ۳llﺣ۳, haluan saada sen kﺣ۳ynnissﺣ۳.
Joten, minulla on nyt minun sovelluksen kﺣ۳ytﺣﭘn.
Aion avata Safari, ja se on kﺣ۳ynnissﺣ۳ minun paikallinen isﺣ۳ntﺣ۳.
Joten olen juuri menossa tehdﺣ۳ tﺣ۳tﺣ۳ suurempi.
Mutta localhost: 5000
>> Ja niin, juuri nyt, kaikki tﺣ۳mﺣ۳ tekee on, kun kﺣ۳yt sivustolla,
se tulostaa "Hei pullo," joka ei ole super hyﺣﭘdyllinen,
mutta mielestﺣ۳ni se on cool, ettﺣ۳ Tﺣ۳ssﺣ۳ pieni tiedosto tﺣ۳stﺣ۳,
meillﺣ۳ on web-palvelin kﺣ۳ynnissﺣ۳ ettﺣ۳ tulostaa jotain.
Joten, nyt todella nﺣ۳yttﺣ۳vﺣ۳t klo koodi toisen,
ja murtaa se alas hieman.
Onko koko hyvﺣ۳ kaikille tﺣ۳ﺣ۳llﺣ۳?
>> Niin, toivottavasti, olet hieman mukava kﺣ۳yttﺣ۳ﺣ۳ Python.
Oletan, ettﺣ۳ voimme tarkastella Python ja lukea sen lﺣ۳pi.
Jos sinulla on kysyttﺣ۳vﺣ۳ﺣ۳ mitﺣ۳ﺣ۳n, voin myﺣﭘs mennﺣ۳ yli siitﺣ۳.
>> Joten ensimmﺣ۳inen rivi on, pullosta, tuomme, pullo isolla "F"
joka on tavallaan kaikki keskeisiﺣ۳ ominaisuuksia, joita tarvitset.
Aina kun kirjoitat tiedoston ja kﺣ۳yttﺣ۳mﺣ۳llﺣ۳ pullo,
olet menossa halua tuoda, ettﺣ۳ vain siksi, ettﺣ۳ on kaikki tﺣ۳rkeimmﺣ۳t asiat.
Seuraava asia teemme, on meillﺣ۳ kutsua tﺣ۳tﺣ۳ toimintoa pullo, vain
luoda sovelluksen objekti, ja olet aina menossa haluavat tehdﺣ۳ niin.
>> Ja sitten, hyppﺣ۳ﺣ۳ alas pohja nopeasti, tﺣ۳mﺣ۳ osa tﺣ۳ssﺣ۳,
"If_name _ ==" _ main_ "', joka on erﺣ۳ﺣ۳nlainen Python sopimusta.
Joten tﺣ۳mﺣ۳ toimii vain suorittaa, jos suorittaa tﺣ۳mﺣ۳n tiedoston suoraan kﺣ۳yttﺣ۳en Python.
Sitten kutsumme app.run, joka todella alkaa App menossa.
>> Niin, se on pﺣ۳ﺣ۳asia rakenne sinulla on joka pullo sovellus,
on sinulla on tﺣ۳mﺣ۳ app = pullo (_NAME_), ja sitten app.run.
>> Joten, kaksi asiaa, jotka minulla on tﺣ۳ﺣ۳llﺣ۳, ovat mitﺣ۳ me kutsumme reittejﺣ۳.
Joten, puhutaanpa reititys hieman enemmﺣ۳n.
Menen takaisin dia.
>> Joten keskeisimpiﺣ۳ kﺣ۳site pullo on reititys.
Ja se on ajatus, ettﺣ۳ te mﺣ۳ﺣ۳rittﺣ۳ﺣ۳ toimintoja Python
tiettyihin osoitteisiin Web-sivulla.
Joten, milloin haluat luoda uuden reitin,
kﺣ۳ytﺣ۳t tﺣ۳tﺣ۳ @ app.route toiminto sisustusarkkitehti.
Joten, jos et tunne toiminto sisustussuunnittelijan Python,
se on tﺣ۳mﺣ۳ kﺣ۳site, voit ottaa toiminnon
ja surround sen jotain muuta.
>> Siis todella, mitﺣ۳ tﺣ۳mﺣ۳ sisustusarkkitehti tekee, on, ettﺣ۳ se vie toiminnon sen alapuolella,
ja se lisﺣ۳ﺣ۳ lisﺣ۳tietoa sitﺣ۳, mutta mitﺣ۳ pullo todellisuudessa
ei tehdﺣ۳ tﺣ۳mﺣ۳n tapahtua ei ole super ratkaiseva, mutta mikﺣ۳ on tﺣ۳rkeﺣ۳ﺣ۳,
on, ettﺣ۳ ennen reitin, voit laittaa tﺣ۳mﺣ۳n @ app.route, ja sitten
osoitteen reitin, joten slash me
nﺣ۳in, me vain avata web-sivun.
Niin, ettﺣ۳ kotisivu.
Se on vain slash reitin.
Ja sitten on tﺣ۳mﺣ۳ toiminto.
Funktion nimi voi olla mitﺣ۳ haluat.
Se ei ole vﺣ۳lttﺣ۳mﺣ۳ttﺣ۳ on tekemistﺣ۳ vﺣ۳lillﺣ۳.
Ja sitten, mitﺣ۳ funktion paluuta,
funktio palauttaa merkkijonon.
Ja ettﺣ۳ merkkijono voi sisﺣ۳ltﺣ۳vﺣ۳t HTML tai mitﺣ۳ﺣ۳n,
ja se on todella mitﺣ۳ saat palasi selaimessasi HTML,
ja se tehdﺣ۳ ettﺣ۳.
>> Joten tﺣ۳mﺣ۳ on sama koodi ettﺣ۳ oli esimerkistﺣ۳
ettﺣ۳ minﺣ۳ vain juoksin, joten kun vierailemme slash, se kutsuu Hello World toiminto, joka
vain palauttaa merkkijonon, Hei pullo, ja ettﺣ۳ saa tulostuu ruudulle.
>> Joten on toinen esimerkki, joka on, kun kﺣ۳yt / Hei,
tulostamistaan ﻗﻗhei sana, joka pitﺣ۳isi oikeastaan ﻗﻗsanoa, Hello World,
mutta katsotaan teeskennellﺣ۳, ettﺣ۳ oli tahallinen.
Joten vetﺣ۳ﺣ۳, ettﺣ۳ jopa todella nopeasti.
>> Joten jos menet localhost / Hei, se nyt tulostaa jotain muuta.
Niin, ettﺣ۳ vain nopea esimerkki siitﺣ۳, miten voit luoda kahta eri reittiﺣ۳.
>> Niin, toistaiseksi se ei ole super hyﺣﭘdyllinen, ei ole paljon voit tehdﺣ۳,
voit vain tehdﺣ۳ kaikki, ettﺣ۳ joilla on eri HTML-sivuja,
ja kun kﺣ۳yt tietyn sivu se vain lataa sivu.
Joten nﺣ۳hdﺣ۳ lisﺣ۳ﺣ۳ hyﺣﭘdyllisiﺣ۳ asioita voit tehdﺣ۳.
Niin, yksi asia, ettﺣ۳ saatat olla huomattu esimerkki, joka Vedin
ylﺣﭘs, on ettﺣ۳ olin app.run (debug = True).
Ja niin, mitﺣ۳ tﺣ۳mﺣ۳ debug argumentti tekee, on
ettﺣ۳ kun kﺣ۳yttﺣ۳ﺣ۳ Web-palvelimen, kun olet hakemuksesi,
jos muutat tiedoston, se automaattisesti lataa palvelimelle.
>> Ja niin sinun ei oikeastaan ﻗﻗtarvitse uudelleenkﺣ۳ynnistyksen Python, joka on erittﺣ۳in hyﺣﭘdyllinen.
Voin nﺣ۳yttﺣ۳ﺣ۳, ettﺣ۳.
Saanen vedﺣ۳ ylﺣﭘs minun koodi kanssa kirjoitusvirhe se,
ja teeskennellﺣ۳, ettﺣ۳ kirjoitusvirhe otettiin siellﺣ۳ tarkoituksellisesti opettavainen tarkoituksiin.
Joten lisﺣ۳tﺣ۳ tﺣ۳mﺣ۳n takaisin.
Joten nyt se sanoo Hello World.
Aion pelastaa sen.
Ja jos me vetﺣ۳ﺣ۳ takaisin ylﺣﭘs terminaali, luultavasti
sanoa, ettﺣ۳ se on uudelleenkﺣ۳ynnistyksen, koska se havaittiin muutos,
ja niin nyt kun me pﺣ۳ivittﺣ۳ﺣ۳ tﺣ۳mﺣ۳n sivun, se tulostaa oikea asia.
>> Joten debug on erittﺣ۳in hyﺣﭘdyllinen, ettﺣ۳.
Myﺣﭘs, jos sinulla on erﺣ۳ﺣ۳nlainen kaatuu, niin
haluan tehdﺣ۳ tﺣ۳mﺣ۳n sovelluksen kaatumiseen ottaa se ei palaa merkkijono.
Joten, nyt vain se palata Ei jostain syystﺣ۳.
Ja sitten kun kﺣ۳yn tﺣ۳tﺣ۳ sivu, se vain kaatuu,
mutta palvelin ei vain kaatua, se todella antaa sinulle erittﺣ۳in hyﺣﭘdyllinen takaisin
jﺣ۳lkeﺣ۳kﺣ۳ﺣ۳n kaiken, meni pieleen.
Ja mikﺣ۳ on todella mukavaa, on ettﺣ۳ milloin tahansa askel tﺣ۳hﺣ۳n takaisin jﺣ۳ljittﺣ۳ﺣ۳,
voit avata interaktiivinen kuori tﺣ۳ﺣ۳llﺣ۳, ja tavallaan tulostaa mitﺣ۳
muuttujat haluat katsoa.
>> Ja niin virheenkorjaus on todella hyﺣﭘdyllinen miettiminen
mitﺣ۳ teidﺣ۳n palvelin, eikﺣ۳ vain nﺣ۳hdﺣ۳
jotain PHP kuin 500 sisﺣ۳inen server error, mikﺣ۳ on erittﺣ۳in hyﺣﭘdytﺣﭘn.
Yksi asia olla tietoinen, on ettﺣ۳ jos laitat App verkossa
joten se on yleisﺣﭘn nﺣ۳htﺣ۳vissﺣ۳, te koskaan halua lﺣ۳hteﺣ۳ debug-tilassa,
koska ihmiset voivat itse Kﺣ۳ytﺣ۳ ettﺣ۳ konsoli ettﺣ۳ minﺣ۳
osoitti sinua suorittamaan mielivaltaista koodia.
>> Jotta he voivat tulostaa kuten mikﺣ۳ tahansa salaisia ﻗﻗkoodeja sinulla on siellﺣ۳,
he voivat katsoa tarkalleen miten sivustosi toimii.
Joten se on todella hyﺣﭘdyllinen testaukseen, mutta aina
varmista ottaa se pois ennen julkaiset mitﺣ۳ﺣ۳n verkossa.
>> Joten kun kﺣ۳ytﺣ۳t jotain kuten PHP, on tﺣ۳mﺣ۳ ajatus
ettﺣ۳ voit siirtﺣ۳ﺣ۳ tietoja vﺣ۳lillﺣ۳ verkkosivut
laittamalla tiedot tosiasiallisesti URL, joka on GET-pyynnﺣﭘn,
mutta pullo, voit itse tehdﺣ۳ jotain tavallaan kuin ettﺣ۳,
ottaa reitti, joka on muuttuvan sen osana.
>> Joten jos tarkastellaan tﺣ۳mﺣ۳n Esimerkiksi ruudulla tﺣ۳ﺣ۳llﺣ۳,
meillﺣ۳ on reitti, joka on ('/ Hei / "), ja niin, jos kﺣ۳yt
/ Hei / jotain, ettﺣ۳ jotain tulee itse saada tﺣ۳ynnﺣ۳
nimeen muuttuja.
Ja huomaa, ettﺣ۳ toiminto mukana, ettﺣ۳ reitti
on toteuttaa parametri nimi, niin ettﺣ۳ se tulee todella
saada siirtyi toiminto.
>> Ja sitten, kun olet sisﺣ۳llﺣ۳ ettﺣ۳ toiminta,
voit kﺣ۳sitellﺣ۳ ettﺣ۳ kuten normaali Python muuttuja,
ja niin sitten, se tulostaa Hei, ja se
tﺣ۳yttﺣ۳ﺣ۳ nimi kﺣ۳yttﺣ۳en Joissakin merkkijono muotoiluja.
>> Joten lisﺣ۳tﺣ۳ muuttujan osia reititys, kﺣ۳ytﺣ۳t kulmaraudan merkintﺣ۳.
Ja valinnaisesti, voit kﺣ۳yttﺣ۳ﺣ۳ mitﺣ۳ kutsutaan muunnin.
Ja niin, jos laittaa tﺣ۳mﺣ۳ merkintﺣ۳ kanssa paksusuolen,
voit mﺣ۳ﺣ۳rittﺣ۳ﺣ۳, ettﺣ۳ se on int, tai float, tai polku,
ja se tulee automaattisesti muuntaa ettﺣ۳.
Voit myﺣﭘs tehdﺣ۳ muuntaminen sisﺣ۳llﺣ۳ Python-toiminto,
vain kﺣ۳yttﺣ۳mﺣ۳llﺣ۳ valettu, mutta joskus jos haluat varmistaa, ettﺣ۳ se on int,
voit laittaa ettﺣ۳ muuntosﺣ۳ﺣ۳ntﺣﭘ siellﺣ۳.
>> Joten vedﺣ۳ ylﺣﭘs esimerkki Joidenkin muuttuja sﺣ۳ﺣ۳ntﺣﭘjﺣ۳.
Joten tﺣ۳ssﺣ۳, tﺣ۳mﺣ۳ on samat rakenne pullosta tuonti
Pulloon, sovellus = pullo (_NAME_), ja sitten se on kﺣ۳ynnissﺣ۳ lopussa.
Meillﺣ۳ on nﺣ۳itﺣ۳ kahta eri muuttuja reitit tﺣ۳ﺣ۳llﺣ۳.
Ja ensimmﺣ۳inen, on joka nﺣ۳ytin
dia, joka oli se vain vie merkkijonon nimi
ja se tulostaa Hei, nimi.
>> Ja sitten, toinen yksi kﺣ۳yttﺣ۳ﺣ۳ muuntaminen.
Joten tﺣ۳mﺣ۳ automaattisesti muuntaa sen int, ja sitten kaksinkertainen int,
ja tulostaa ettﺣ۳ ulos.
Ja emme tee minkﺣ۳ﺣ۳nlaisia muuntaminen sisﺣ۳llﺣ۳
koska pulloon huolehtii siitﺣ۳.
Joten saat tﺣ۳mﺣ۳n kﺣ۳ynnissﺣ۳.
Kun olet pullo sovelluksen kﺣ۳ytﺣﭘn,
Voit hallita-C irti lopettaa palvelin kﺣ۳ynnissﺣ۳.
Ja sitten minﺣ۳ juoksen muuttujia.
>> Joten mennﺣ۳ﺣ۳n localhost / Hei / Ezra ja Toivottavasti tﺣ۳mﺣ۳ tervehtimﺣ۳ﺣ۳n minua.
>> Joten kesti minun nimeeni, muuttujaan reitti, ja se tﺣ۳ytti sen tﺣ۳ﺣ۳llﺣ۳.
Niin minﺣ۳ myﺣﭘs nﺣ۳yttﺣ۳ﺣ۳ nopeasti esimerkki kaksinkertaistamisen.
Joten jos menet / double / 3, se tulostaa 6.
Joten tﺣ۳mﺣ۳ hoiti muuntaminen meille.
>> Joten voit myﺣﭘs tehdﺣ۳ sen kellua, ja jotain erityistﺣ۳,
jos sinun tﺣ۳ytyy mﺣ۳ﺣ۳rittﺣ۳ﺣ۳ jotain polku, jonka avulla se hyvﺣ۳ksyy viiltﺣ۳ﺣ۳,
mutta sen ei pitﺣ۳isi yleensﺣ۳ olla ongelma.
Toistaiseksi meillﺣ۳, on vielﺣ۳ juuri palaamassa
jouset, joka ei ole kovin kiinnostava.
>> Voisimme itse asiassa palata kirjaimellinen HTML merkkijono.
Joten koodin voimme lisﺣ۳tﺣ۳ jotain kuten b-tag tehdﺣ۳ rohkeita,
mutta useimmat kerran eivﺣ۳t itse halua
olla kirjallisesti HTML sinun Python-koodin.
Se saa todella sotkuinen, ja se ei ole hyvﺣ۳ aika.
>> Pulloon avulla voimme erottaa HTML mitﺣ۳ kutsutaan malli,
joten jos olet ajatellut kannalta MVC malli
ettﺣ۳ olet perehtynyt, toivottavasti, toimimasta
kanssa CS50 Finance hieman, voit ajatella Python tiedostot
olevan enemmﺣ۳n Controller, jossa ne vuorovaikutuksessa tahansa
tietomalli saatat olla.
>> Ja sitten he huutavat Nﺣ۳kymﺣ۳t ja kulkee tietoa ettﺣ۳ Nﺣ۳ytﺣ۳
tﺣ۳yttﺣ۳mﺣ۳ﺣ۳n tiedot HTML ettﺣ۳ se tarvitsee.
Ja mitﺣ۳ me kutsumme ne Nﺣ۳kymﺣ۳t ovat Pohjat luokassa.
>> Joten pullo kﺣ۳yttﺣ۳ﺣ۳ toista Python moduuli, ettﺣ۳ se automaattisesti
asentaa kun PIP asentaa Pulloon nimeltﺣ۳ﺣ۳n Jinja, joka
voit lisﺣ۳tﺣ۳ nﺣ۳mﺣ۳ merkintﺣﭘjﺣ۳ HTML
ettﺣ۳ nﺣ۳et nﺣ۳ytﺣﭘllﺣ۳, jonka avulla laitat asioita, kuten conditionals,
ja silmukat HTML.
>> Niin se nﺣ۳yttﺣ۳ﺣ۳ vﺣ۳hﺣ۳n kuin miten sinﺣ۳ voisi kﺣ۳yttﺣ۳ﺣ۳ PHP sisﺣ۳llﺣ۳ HTML-tiedoston,
mutta tﺣ۳mﺣ۳ on vain kun pullo palvelin tarjoilee HTML-tiedosto,
se suorittaa tﺣ۳mﺣ۳n sivupohjamoottori moottori ja jﺣ۳sentﺣ۳ﺣ۳ kautta ja tﺣ۳ytﺣ۳ asioita.
Joten lasia on render_template toiminto ettﺣ۳ nﺣ۳et alareunassa tﺣ۳ﺣ۳llﺣ۳.
Ja niin kun kﺣ۳yt tﺣ۳llﺣ۳ sivulla, se tekisi tﺣ۳mﺣ۳ hello.html malli,
ja sitten tﺣ۳yttﺣ۳ﺣ۳ tﺣ۳mﺣ۳n HTML sivu.
Joten vain ajaa tﺣ۳mﺣ۳ todellinen nopea, ja katso, mitﺣ۳ se nﺣ۳yttﺣ۳ﺣ۳,
ja sitten menen lﺣ۳pi hieman tarkemmin.
Joten, teidﺣ۳n Mallit ovat menossa mennﺣ۳ kansioon.
Se automaattisesti nﺣ۳yttﺣ۳ﺣ۳ sisﺣ۳llﺣ۳ Kansioon ettﺣ۳ malli.
Joten avaa tﺣ۳mﺣ۳ ylﺣﭘs.
Joten, minﺣ۳ ajaa mallineaineen esimerkki.
>> Joten jos menen / Hei / Ezra, se on tﺣ۳mﺣ۳ kamala,
vastenmielinen teltta tag ettﺣ۳ laitoin.
Erittﺣ۳in kaunis, erittﺣ۳in dynaaminen.
Olen suuri fani.
Mutta mitﺣ۳ tapahtuu, jos Olen vain mennﺣ۳, / hei?
Niin se vain sanoo Hello World.
En anna sitﺣ۳ nimeﺣ۳, ja se tﺣ۳ytti sen automaattisesti.
Joten miten se teki sen, ja miten voimme pﺣ۳ﺣ۳stﺣ۳ eroon, ettﺣ۳ teltta ehkﺣ۳.
>> Joten tﺣ۳ssﺣ۳, tﺣ۳mﺣ۳ on erﺣ۳ﺣ۳nlainen mielenkiintoinen esimerkki,
jos olet perehtynyt miten kytkin lausunnot tyﺣﭘskennellﺣ۳ kielellﺣ۳.
Sano tﺣ۳mﺣ۳ on erﺣ۳ﺣ۳nlainen kuten, ettﺣ۳ sellainen lasku kautta,
jossa todella kiinnitetty kaksi Eri reittejﺣ۳ saman toiminnon.
Joten pidﺣ۳mme / Hei reitti ja / Hei / nimi reitti Hei,
ja me mﺣ۳ﺣ۳rittﺣ۳ﺣ۳ using-- Python voit Mﺣ۳ﺣ۳ritﺣ۳ oletustoiminnon arguments--
joten jos ei ole nimeﺣ۳, niin jos menemme vain / Hei,
se suodattaa automaattisesti mainitakseni on yhtﺣ۳ vailla.
>> Niin, me tehdﺣ۳ Mallin kanssa name = nimi,
niin se menee ohi nimessﺣ۳ parametri sama kuin tﺣ۳mﺣ۳ nimi toiminnon parametrin,
malliin.
Se ei silti selitﺣ۳ miten on pﺣ۳ﺣ۳ttﺣ۳essﺣ۳ﺣ۳n tulostaa Hello World,
tai tulostaa nimeni.
Joten todella nﺣ۳yttﺣ۳vﺣ۳t malliin itse,
ja nﺣ۳hdﺣ۳, jos tﺣ۳mﺣ۳ on lﺣ۳htﺣﭘisin.
>> Joten, tﺣ۳ssﺣ۳ malli, me todella on joitakin ehdollinen logiikka,
jonka jotkut ihmiset vﺣ۳ittﺣ۳vﺣ۳t, olet itse
ei pitﺣ۳isi olla paljon ehdollisen logiikka omassa malli itse.
Sen pitﺣ۳isi olla sisﺣ۳llﺣ۳ Ohjain, mutta tﺣ۳ssﺣ۳ esimerkissﺣ۳
se on jotain melko pieni.
Joten tﺣ۳ssﺣ۳, me tarkistaa, jos nimi, niin jos nimi ei ole sama kuin mitﺣ۳ﺣ۳n,
jos nimi on todella hyvﺣ۳ksyttiin, niin me
tervehtiﺣ۳, Nimeﺣ۳ kanssa otsikko ja teltta,
kaikki tﺣ۳mﺣ۳ normaalia HTML, muuten me tulostaa Hello, world vain normaalisti.
Joten pari asiaa huomata tﺣ۳ﺣ۳llﺣ۳ siitﺣ۳, miten muotoilla mallittavaa
on, ettﺣ۳ kaikki nﺣ۳mﺣ۳ ehtolauseet,
tavallaan kuin miten me PHP sitﺣ۳, kun haluat lisﺣ۳tﺣ۳ joitakin PHP,
kﺣ۳ytﺣ۳t vﺣ۳hemmﺣ۳n kuin kysymys merkki, se on erﺣ۳ﺣ۳nlainen analoginen tﺣ۳ﺣ۳llﺣ۳
kanssa {%.
>> Joten tﺣ۳ssﺣ۳, meillﺣ۳ on ehdollinen koodi.
Ja sitten, kun itse haluat kirjaimellisesti arvioida jotain, ja tulosta
se ulos nﺣ۳ytﺣﭘssﺣ۳ Kﺣ۳ytﺣ۳ kaksinkertainen olkaimet.
Joten tﺣ۳ssﺣ۳ on kaksinkertainen henkselit, ja sitten me mﺣ۳ﺣ۳ritﺣ۳ nimi,
niin sisﺣ۳llﺣ۳ ettﺣ۳, se arvioi muuttujan nimi, joka
johdettiin sisﺣ۳ﺣ۳n render mallin toiminto,
eikﺣ۳ vain tulostus ulos, jos pﺣ۳ﺣ۳simme eroon nﺣ۳istﺣ۳,
se vain tulostaa sanan "nimi."
Niin, se on jotain varoa.
>> Niin toinen asia ilmoitus on ettei, kun
haluat kﺣ۳yttﺣ۳ﺣ۳ render_template funktio,
meillﺣ۳ on todellakin tuotava sitﺣ۳ selvﺣ۳sti pulloon.
Ja tﺣ۳mﺣ۳ on esimerkki modulaarisuus pullon,
ettﺣ۳ sinun ei tarvitse tuoda asioita, joita et tarvitse.
Voit vain tuoda toiminnot itse
tarvitsemme, joka on joskus mukava, joten et
on oltava kaikki nﺣ۳mﺣ۳ toiminnot istumisesta ettﺣ۳ et kﺣ۳ytﺣ۳,
mutta myﺣﭘs, jos unohdat, ettﺣ۳ olet tﺣ۳ytyy tuoda render_template,
saat todennﺣ۳kﺣﭘisesti varoitus ettﺣ۳ voit tietﺣ۳ﺣ۳ siitﺣ۳.
Niin, ettﺣ۳ on templating.
>> Niin, olemme osoittaneet, miten tehdﺣ۳ yksinkertaisia ﻗﻗweb-sivuja,
ja lisﺣ۳tﺣ۳ hieman enemmﺣ۳n logiikkaa se, suhteen muuttuvan reitityksen.
Sen avulla voit tehdﺣ۳ eri asioita perustuu mitﺣ۳ URL menet, ja myﺣﭘs sitten, antaa
HTML vﺣ۳hﺣ۳n enemmﺣ۳n jﺣ۳rkeﺣ۳ suhteen, miten haluat tehdﺣ۳ asioita.
Sinun ei tarvitse laittaa kaikki HTML teidﺣ۳n Python,
mutta aika paljon joka web-sovellus,
olet menossa haluavat jonkinlaista Tietojen malli liittyy siihen.
>> Ja niin perinteisesti, tﺣ۳mﺣ۳ olisi olla jotain SQL-tietokannan.
Ja voit vain vuorovaikutuksessa suoraan SQL.
Python on mielestﺣ۳ni sitﺣ۳ kutsutaan.
SQLite 3.
Voit vain tuoda SQLite 3 ja suorittaa SQL-kyselyjﺣ۳ suoraan,
mutta en tiedﺣ۳ sinusta, mutta en todellakaan pidﺣ۳, vain,
kirjoittamisen SQL-kyselyjﺣ۳.
Se on yleensﺣ۳ saada todella pitkﺣ۳ ja monimutkainen.
>> Ja niin, mikﺣ۳ Haluan kﺣ۳yttﺣ۳ﺣ۳ on mitﺣ۳
tunnettu ORM, joka on esine-relaatio kartoitus.
Ja pisteen esine-relaatio kartoitus,
on se, ettﺣ۳ on olemassa kaksi eri tapoja voit ajatella tietokantoja.
>> Joten esimerkki, joka Professori Malan yleensﺣ۳
kﺣ۳yttﺣ۳ﺣ۳ luokassa, on Excel-taulukko, jossa olet nﺣ۳mﺣ۳ rivit ja nﺣ۳mﺣ۳ sarakkeet,
ja se on todella hyﺣﭘdyllinen miten se on edustettuna SQL
ja miten te vuorovaikutuksessa sen kanssa, mutta Toinen tapa, ettﺣ۳ se on todella
hyﺣﭘdyllistﺣ۳ ajatella sitﺣ۳ joskus, on kannalta luokissa ja esineitﺣ۳.
>> Joten sen sijaan ajattelu Kunkin taulukon olevan
tﺣ۳mﺣ۳n rivin ettﺣ۳ on tiettyjﺣ۳ tiedot, voit itse
ajatella sen olevan kunkin taulukon on luokka,
ja sitten jokainen esiintymﺣ۳ luokka on tiettyjﺣ۳ ominaisuuksia.
Niin, tﺣ۳ssﺣ۳ esimerkissﺣ۳, tapauksia luokan ovat taulukon rivejﺣ۳,
ja sitten jokainen kiinteistﺣﭘ olisi olla sarake taulukossa.
>> Joten, ORM ettﺣ۳ pidﺣ۳n kﺣ۳yttﺣ۳ﺣ۳ kutsutaan peewee.
Se on todella pieni, tavallaan kuin pulloon.
Luulen, ettﺣ۳ ne menevﺣ۳t hyvin yhteen, mutta on olemassa paljon muita Orms
ettﺣ۳ voit kﺣ۳yttﺣ۳ﺣ۳.
Suositumpi yksi on tunnetaan SQLAlchemy,
ja en muista miksi minﺣ۳ perin valitsi peewee yli SQLAlchemy,
tai Haluan kertoa teille, miksi mielestﺣ۳ni se on paras,
mutta me vain aio kﺣ۳yttﺣ۳ﺣ۳ tﺣ۳tﺣ۳ yksi koska tiedﺣ۳n miten sitﺣ۳ kﺣ۳ytetﺣ۳ﺣ۳n.
>> Niin, yksi kysymys on, miksi sinun pitﺣ۳isi vaivautua kﺣ۳yttﺣ۳mﺣ۳llﺣ۳ ORM,
eikﺣ۳ vain suoraan kirjallisesti SQL-kyselyjﺣ۳?
Ja mielestﺣ۳ni paras asia, on ettﺣ۳ et itse
tﺣ۳ytyy kirjoittaa SQL-kyselyjﺣ۳.
Se on paljon helpompaa, koska minﺣ۳ nﺣ۳ytﺣ۳n sinulle, ettﺣ۳ tehdﺣ۳ asioita, kuten valinta, lisﺣ۳ys,
poisto, varsinkin luoda taulukoita.
Se on paljon helpompaa kirjoittaa luokan rakenne,
kuin se on jﺣ۳sentﺣ۳ﺣ۳ Luo Taulukko lausunto, mutta yksi asia
olla tietoinen, ettﺣ۳ ORM yrittﺣ۳ﺣ۳ parhaansa
selvittﺣ۳ﺣ۳, mitﺣ۳ eniten tehokas SQL olisi,
mutta joskus se saa vﺣ۳ﺣ۳rin.
>> Ja varsinkin jos olet tyﺣﭘskentelee iso tietokanta,
voit huomata, ettﺣ۳ kyselyn ettﺣ۳ olisi nopeasti kﺣ۳yntiin,
todella kauemmin.
Ja jos tarkastellaan konepellin alla, miten ORM on tulkkaus ettﺣ۳ SQL,
se saattaa tehdﺣ۳ jotain todella naurettavaa,
vain koska se tavallaan viittasi viholliselle vﺣ۳ﺣ۳rﺣ۳ssﺣ۳.
Ja, on ollut aikoja, jossa Olen joutunut ohittaa sen, ja vain
suorittaa oman SQL-kyselyjﺣ۳, vain koska se oli jﺣ۳sentﺣ۳miseen oudolla tavalla.
Joten, on jonkin verran ylﺣ۳puolella, vain tiellﺣ۳
ettﺣ۳ se kokoaa teidﺣ۳n lausunnot alas SQL.
>> Niin, Katsotaanpa Super nopeasti Yksinkertainen esimerkki tietomallin
ettﺣ۳ voit kﺣ۳yttﺣ۳ﺣ۳.
Niin, tﺣ۳mﺣ۳ on Python koodia, ja niin Ensimmﺣ۳inen asia, jonka haluat tehdﺣ۳, on perﺣ۳isin
peewee tuonti *.
Joten, toisin kuin taskumatti, jossa sinulla on kaikki nﺣ۳mﺣ۳ yksittﺣ۳iset moduulit,
ja haluat tuoda pullo, ja kirjoittaa malli, ja toiset
ettﺣ۳ nﺣ۳emme myﺣﭘhemmin, mistﺣ۳ peewee, voit vain tuoda kaiken,
koska se on melko pieni kirjasto.
>> Joten, ensimmﺣ۳inen asia, jonka haluat tehdﺣ۳, on itse luoda tietokannan objekti.
Niin, sinun tﺣ۳ytyy db = SqliteDatabase, ja sitten nimi tietokannan.
Ja tﺣ۳mﺣ۳ todella luoda tietokanta objekti
ettﺣ۳ voit vuorovaikutuksessa, jossa peewee.
>> Ja sitten, meillﺣ۳ on todellinen malli ettﺣ۳ haluamme luoda.
Joten taulukko haluamme luoda.
Joten, sisﺣ۳llﺣ۳ peewee, jokainen luokka on oma pﺣﭘytﺣ۳ sisﺣ۳llﺣ۳ tietokantaan.
Joten, kaikki luokat perivﺣ۳t perusmalli,
ja pﺣ۳ﺣ۳oma m Malli on jotain, joka on mﺣ۳ﺣ۳ritelty peewee.
>> Joten, kaikki mallit pitﺣ۳isi perivﺣ۳t niiden korkein yliluokka,
ne olisi perivﺣ۳t malli, mutta mitﺣ۳ on todella siistiﺣ۳,
on, ettﺣ۳ voit itse olla oma malleja perivﺣ۳t toisistaan.
Ja paljon aikaa, sinun tietomallien eivﺣ۳t vﺣ۳lttﺣ۳mﺣ۳ttﺣ۳
tehdﺣ۳ mukava perintﺣﭘ hierarkia, mutta tilanteita, joissa he tekevﺣ۳t, se on todella mukavaa,
koska sinulla on malli luontainen toisistaan.
>> Joten me mﺣ۳ﺣ۳ritelty tﺣ۳ssﺣ۳ luokassa "Opiskelija", joka perii malli,
ja sillﺣ۳ on kolme kiinteistﺣﭘﺣ۳.
Se on tunnus, joka on PrimaryKeyField, joka
on jotain, joka on sﺣ۳ﺣ۳detty mukaan peewee, nimi on CharField,
ja arvosana on IntegerField.
Joten tﺣ۳mﺣ۳ voi olla tai ei ole kuinka CS50 todella tallentaa kaikki
opiskelijoiden laadut.
Se ei ole, mutta tﺣ۳mﺣ۳ on, miten tekisin sen.
>> Ja sitten se on, sisﺣ۳llﺣ۳ tﺣ۳mﺣ۳n luokan, ja tﺣ۳mﺣ۳
on jotain, voit tehdﺣ۳ Python, voit olla sisﺣ۳kkﺣ۳isiﺣ۳ luokkia.
Ja tﺣ۳mﺣ۳ on jotain mitﺣ۳ tarvitaan mukaan peewee.
Joten, tﺣ۳mﺣ۳ luokka Meta, sinulla on tﺣ۳smentﺣ۳ﺣ۳, ettﺣ۳ tietokanta on
yhtﺣ۳ suuri esine ettﺣ۳ loimme edellﺣ۳.
Ja tﺣ۳mﺣ۳ kertoo mikﺣ۳ tiedosto on tﺣ۳mﺣ۳ taulukko todella tulee sisﺣ۳ltyﺣ۳.
Joten tﺣ۳mﺣ۳ on jotain, ettﺣ۳ sinulla on tehdﺣ۳ sisﺣ۳llﺣ۳ kaikki mallit.
Sinun tﺣ۳ytyy vain mﺣ۳ﺣ۳ritellﺣ۳ tﺣ۳ssﺣ۳ Meta luokkaan
ettﺣ۳ tietokanta on yhtﺣ۳ dB.
Joten mitﺣ۳ yleensﺣ۳ teen, jos minulla on joukko erilaisia ﻗﻗmalleja,
on, ettﺣ۳ minulla on yksi perusta malli, ettﺣ۳ olen yleensﺣ۳
soita "perusmalli" ettﺣ۳ on Meta luokka,
ja se asettaa tietokannasta vastaa dB.
Ja sitten kaikki minun myﺣﭘhemmﺣ۳t mallit perii kyseisestﺣ۳ perustaa luokan.
Ja sitten ei tarvitse huolehtia lisﺣ۳tietoja asetuksista Meta luokka.
>> Joten, kun tﺣ۳mﺣ۳ todella saa koottu alas SQL,
se nﺣ۳yttﺣ۳ﺣ۳ tﺣ۳mﺣ۳n ilkeﺣ۳ asia alas tﺣ۳ﺣ۳llﺣ۳, "Luo pﺣﭘytﺣ۳ opiskelijakortti kokonaisluku,
" aivan sama.
>> Ja olen sitﺣ۳ mieltﺣ۳, ettﺣ۳ se on lyhyempi, tﺣ۳mﺣ۳ SQL tﺣ۳ﺣ۳llﺣ۳,
mutta jos tarkastellaan tﺣ۳mﺣ۳n luokan tﺣ۳ﺣ۳llﺣ۳ nﺣ۳et tarkalleen missﺣ۳ mennﺣ۳ﺣ۳n.
Nﺣ۳et millaisia ﻗﻗkentﺣ۳t on, mitﺣ۳ he kutsutaan,
ja niin, luulen ettﺣ۳ tarkastelemme tﺣ۳tﺣ۳ Python koodi
on paljon enemmﺣ۳n luettavissa kuin yrittﺣ۳ﺣ۳ kirjoittaa SQL-kyselyn.
>> Joten, jotta todella kﺣ۳yttﺣ۳ﺣ۳ tietokantaa,
meidﺣ۳n tﺣ۳ytyy liittﺣ۳ﺣ۳ sen sisﺣ۳llﺣ۳ Python.
Joten, olen yleensﺣ۳ kirjoittaa toiminto nimeltﺣ۳ﺣ۳n initialize_db ettﺣ۳ ei kahta asiaa.
Siinﺣ۳ otetaan tietokantaan esine dB ja se
yhdistﺣ۳ﺣ۳ se, joka vain avautuu KOHTA tietokantaan.
Jos olet juuri kﺣ۳ynnissﺣ۳ vaikka verkkosivusto omalla koneellasi,
se ei ole super iso juttu huolehtia noin liittﺣ۳minen ja irrottaminen,
mutta jos kﺣ۳ytﺣ۳t se verkkosivuilla, olet
haluat varmistaa, ettﺣ۳ aina kun kﺣ۳yttﺣ۳jﺣ۳ yhdistﺣ۳ﺣ۳ se, kun he sulkea
verkkosivuilla, ne katkaista niin, ettﺣ۳ te ei ole joukko ihmisiﺣ۳ kytketty
tietokantaan kerralla.
>> Ja sitten, kun yhteyden tietokantaan,
haluat soittaa db.create_tables, ja luettelo malleja mitﺣ۳ haluat
luoda taulukoita.
Joten tﺣ۳ssﺣ۳, haluan vain luoda sen tﺣ۳mﺣ۳ opiskelija.
Ja sitten, mikﺣ۳ on tﺣ۳rkeﺣ۳ﺣ۳, on mﺣ۳ﺣ۳ritﺣ۳ turvallinen = Totta eniten aikaa.
Joten mitﺣ۳ tﺣ۳mﺣ۳ lausunto tekee, on ettﺣ۳ se
luo taulukot opiskelija malli, mutta vain
jos pﺣﭘytﺣ۳ ei ole luotu jo.
Sitﺣ۳hﺣ۳n turvallinen tﺣ۳smennetﺣ۳ﺣ۳n.
Joten se ei korvaa olemassa taulukko,
se vain luo uuden taulukko jos ei ole ketﺣ۳ﺣ۳n.
Joten, voit vain luoda taulukot kerran SQL.
Ja sitten on ettﺣ۳ tietokanta istunnossa siellﺣ۳, ja sitten liittﺣ۳ﺣ۳ joka kerta,
mutta se on yleensﺣ۳ mukava vain laittaa tﺣ۳ssﺣ۳ create_tables puhelu,
niin ettﺣ۳, jos joskus poistat tietokanta, kun kﺣ۳yttﺣ۳ﺣ۳ Web
app uudelleen, se luo se.
>> Joten, vain varmista, ettﺣ۳ turvallinen on mﺣ۳ﺣ۳ritelty ollakseen totta,
tai lﺣﭘydﺣ۳t tietosi vain saada clobbered joka kerta.
Ja sitten, voit vain soittaa initialize_db perustaa
yhteys, ja luoda taulukoita tarvittaessa.
>> Niin, yleisin asia ettﺣ۳ haluat tehdﺣ۳,
tai yksi yleisimmistﺣ۳ asioita, on todella lisﺣ۳tﺣ۳ asioita
tietokantaan.
Ja niin sen sijaan, ettﺣ۳ kirjoittaa insertin
selvitys kaikkien arvoja,
voit itse soittaa toiminto opiskelijan luokka.
Joten, kun luot luokan ettﺣ۳ perii malli,
se on tﺣ۳mﺣ۳ luoda menetelmﺣ۳.
>> Joten, et luokka name.create, ja voit mﺣ۳ﺣ۳rittﺣ۳ﺣ۳ parametrit
ettﺣ۳ haluat kulkea.
Joten, jos haluan lisﺣ۳tﺣ۳ jotkut opiskelijat meidﺣ۳n CS50 asteen kirja esimerkiksi
Laitan David, joka on erittﺣ۳in hyvﺣ۳ laatu, hﺣ۳nellﺣ۳ on 95.
Ja minﺣ۳, joka ei tee niin hyvin CS50, minulla on 50.
Ja niin, kiva juttu mitﺣ۳ tﺣ۳mﺣ۳ luo toiminto tekee,
on, ettﺣ۳ se palauttaa esimerkiksi tai rivi, ettﺣ۳ se luodaan taulukko,
ja niin sitten tallentaa ettﺣ۳ muuttuja, ja tyﺣﭘskennellﺣ۳ sen kanssa myﺣﭘhemmin.
Voit vaihtaa ympﺣ۳ri, joka Nﺣ۳ytﺣ۳n esimerkki.
>> Huomaa, ettﺣ۳ en on mﺣ۳ﺣ۳riteltﺣ۳vﺣ۳ tunnus,
koska sillﺣ۳ se on PrimaryKeyField, se automaattisesti
kasvattaa se jos et mﺣ۳ﺣ۳ritﺣ۳ sitﺣ۳.
Ja itse asiassa, luultavasti ei pitﺣ۳isi mﺣ۳ﺣ۳ritellﺣ۳ sitﺣ۳,
sillﺣ۳ saatat vahingossa hakata jonkun toisen tunnus.
Ja haluat tehdﺣ۳ varma, ettﺣ۳ se on ainutlaatuinen.
>> Niin, itse asiassa, kaikkein yhteinen asia, jonka haluat tehdﺣ۳,
on luultavasti valita ulos Tietokannan kun
on paljon tietoa siellﺣ۳.
Ja niin, jos haluat saada kaiken, niin vastaa Valitse tﺣ۳hti
Opiskelijoiden lausunto, se olisi vain student.select.
Ja joka antaa sinulle takaisin array kaikkien opiskelija esineet siinﺣ۳
ettﺣ۳ te kerrata yli haluat.
Voit saada asiat irti.
Ja suurimman osan ajasta, voit eivﺣ۳t vain halua tehdﺣ۳ valita,
todella haluat mﺣ۳ﺣ۳rittﺣ۳ﺣ۳ jotain.
Ja niin, voit ketju Yhdessﺣ۳ nﺣ۳mﺣ۳ funktiokutsut,
kuten miten voit ketju yhdessﺣ۳ lausuntoja SQL.
Joten voit tehdﺣ۳ student.select (). Jossa tﺣ۳ssﺣ۳ esimerkissﺣ۳.
Ja sitten, voit mﺣ۳ﺣ۳ritellﺣ۳ﺣ۳n ehdot,
vain kﺣ۳yttﺣ۳mﺣ۳llﺣ۳ normaalia Python Booleans haistelemassa.
>> Eli tﺣ۳ssﺣ۳ tapauksessa haluat raja, mitﺣ۳ olet valinnut sen,
jossa student.grade on yhtﺣ۳ suuri kuin 50, ja student.name on yhtﺣ۳ kuin Esra,
niin ettﺣ۳ vain saada minut irti.
Ja huomaa, yksi todella hienovarainen asia tﺣ۳ssﺣ۳
ettﺣ۳, jos haluat mﺣ۳ﺣ۳rittﺣ۳ﺣ۳ ja / ja tai tai / tai,
Python, kﺣ۳ytﺣ۳t normaalisti, Mielestﺣ۳ni sana "ja" itse asiassa,
mutta tﺣ۳ﺣ۳llﺣ۳ kﺣ۳ytﺣ۳t yhden et-merkki, joka on yleensﺣ۳ bittioperaattori,
mutta tﺣ۳ssﺣ۳ erityistapauksessa, juuri niin peewee tekee sen,
kﺣ۳ytﺣ۳t yhden Ampersand tﺣ۳smentﺣ۳ﺣ۳ "ja."
Se on jotain, joka Olen sekaisin paljon,
mutta se ei keksiﺣ۳ ettﺣ۳ paljon kﺣ۳ytﺣ۳nnﺣﭘssﺣ۳.
>> Ja sitten, kun sinulla on kaikki opiskelijat ulos tietokannasta,
kun olet tehnyt olet valitsemalla ja kulumista tai mitﺣ۳ tahansa,
voit kﺣ۳yttﺣ۳ﺣ۳ foreach silmukka, aivan kuten normaali Python,
minkﺣ۳ﺣ۳nlaisten iteraattori tai minkﺣ۳ﺣ۳nlaista array.
Voit siis tehdﺣ۳, S in student.select (). whe
re (Student.grade <75), ja niin tﺣ۳mﺣ۳ tahto kerrata yli jokaiselle oppilaalle taulukossa
joiden arvosana on alle 75, joka tﺣ۳ssﺣ۳ tapauksessa, on edelleen vain minﺣ۳.
Ja niin voisitte tehdﺣ۳ jotain sisﺣ۳llﺣ۳ ettﺣ۳ silmukka, kuten lﺣ۳hetﺣ۳ minulle sﺣ۳hkﺣﭘpostia
ja kertoa minulle todella kﺣ۳ﺣ۳ntyﺣ۳ minun ongelmani setit.
>> Joten, toinen asia voit tehdﺣ۳, on se todella helppoa
pﺣ۳ivittﺣ۳ﺣ۳ rivejﺣ۳ taulukkoon.
Niin, muistakaa takaisin tﺣ۳nne, sinun Kun asetin,
Otin arvo oli palauttamat student.create,
ja minﺣ۳ liitetﺣ۳ﺣ۳n sen nimi nimeltﺣ۳ Ezra.
Ja nyt, voit vaihtaa arvoja ettﺣ۳ esimerkiksi
aivan kuin olisit normaali luokan Python.
>> Joten voit asettaa ezra.grade = 95 ja ettﺣ۳ pﺣ۳ivittﺣ۳ﺣ۳ paikallista kopiota,
mutta jos todella haluavat sitoutuvat muutoksesta tietokantaan,
sinun tﺣ۳ytyy soittaa ezra.save, niin soitit .save menetelmﺣ۳
on esimerkiksi.
>> Ja nyt, olen onnistuneesti muuttunut oma luokka tietokannassa.
Niin, niin sanotaan, ettﺣ۳ saan kiinni muutan luokka tietokannassa.
Professori Malan on todennﺣ۳kﺣﭘisesti aio haluta poistaa minut luokasta,
ja niin voit soittaa .delete Esimerkiksi menetelmﺣ۳ juuri se juttu.
>> Joten, jos halusi mennﺣ۳ takaisin tﺣ۳mﺣ۳n silmukan tﺣ۳ssﺣ۳,
ja todella, sen sijaan lﺣ۳hettﺣ۳ﺣ۳ sﺣ۳hkﺣﭘposteja kaikki
opiskelijoista, joiden arvosana on vﺣ۳hemmﺣ۳n kuin 75, halusitte poistaa ne,
tﺣ۳mﺣ۳n silmukan voisit soittaa s.delete esimerkiksi.
Ja aivan viimeinen asia, jonka haluat tehdﺣ۳, on aina yhteyttﺣ۳ muodostettaessa,
ja olet tehnyt tyﺣﭘsi, haluat soittaa db.close,
jos db on, ettﺣ۳ tietokanta vﺣ۳ittﺣ۳vﺣ۳t, ettﺣ۳ meillﺣ۳ oli ennen.
Ja haluat varmistaa, ettﺣ۳ kaikki menee suljettu pois.
>> Viileﺣ۳.
Joten nyt, minulla on esimerkki sovellus.
Olen tavallaan valmiista kaikki vain niin ettﺣ۳ ei tule mitﺣ۳ﺣ۳n elﺣ۳ﺣ۳ koodausta
virheitﺣ۳, mutta voimme kﺣ۳vellﺣ۳ lﺣ۳pi se ja nﺣ۳hdﺣ۳, miten voit laittaa pulloon
ja Peewee yhdessﺣ۳, ja tehdﺣ۳ yksinkertainen sovellus.
Kutsun sitﺣ۳ CS50 paasaavat, ja se on erﺣ۳ﺣ۳nlainen yksinkertainen blogin foorumi.
>> Joten, ensimmﺣ۳inen, minﺣ۳ kﺣ۳yttﺣ۳ﺣ۳ sitﺣ۳ ja nﺣ۳yttﺣ۳ﺣ۳ miltﺣ۳ se nﺣ۳yttﺣ۳ﺣ۳,
ja sitten voimme nﺣ۳yttﺣ۳ﺣ۳ enemmﺣ۳n osaksi koodia.
Okei, joten haluan vain ajaa tﺣ۳tﺣ۳.
Cool, Teen tﺣ۳tﺣ۳ hieman pienempi.
Se ei ole kovin kaunis, vain koska En tee paljon CSS,
mutta mitﺣ۳ se tekee on, se on tﺣ۳mﺣ۳ tietokanta blogikirjoituksia
ja se menee lﺣ۳pi kaikki niitﺣ۳, ja se nﺣ۳yttﺣ۳ﺣ۳ ne
sivulla jﺣ۳rjestyksessﺣ۳ viimeisimpien.
Ja niin nﺣ۳mﺣ۳ ovat vain joitakin virkoja ettﺣ۳ olin tallennetaan tietokantaan.
>> Joten jos haluamme luoda uuden postitse, voimme mennﺣ۳ Lisﺣ۳ﺣ۳ uusi viesti,
ja voimme kirjoittaa otsikko postitse, joten jotain, CS50 seminaari.
Vau, todella nauttia seminaarin.
>> Viileﺣ۳.
Sitten painat postitse, ja se tulee ohjaa sinut takaisin etusivulle,
ja sitten nﺣ۳et, ettﺣ۳ viimeisin viesti lisﺣ۳ttiin.
Ja meillﺣ۳ on edelleen kaikki ne siellﺣ۳.
Joten nyt, nyt selata kaikkia koodi ja nﺣ۳hdﺣ۳, miten tﺣ۳mﺣ۳ toteutetaan.
>> Joten Mielestﺣ۳ni ensimmﺣ۳inen asia, ettﺣ۳ katsotaanpa katsomaan, on todella malleja.
Paljon aikaa, jolloin olet suunnittelussa jotain,
haluat ajatella ensin, miten olet menossa edustamaan tietosi,
ja sitten suunnitella asiat ympﺣ۳rillﺣ۳mme, ettﺣ۳ niin ettﺣ۳ kaikki on jﺣ۳rkevﺣ۳ﺣ۳.
Ja ettﺣ۳ on todella miten minﺣ۳ teki sen kun tein tﺣ۳mﺣ۳n,
Istuin alas ja ajattelin, mitﺣ۳ haluan post.
>> Niin, tﺣ۳ssﺣ۳, meillﺣ۳ on sama rakenne ettﺣ۳ olin mainita aikaisemmin,
joissa meillﺣ۳ db = Sqldatabase ('posts.db').
Todellisuudessa luultavasti halua kovaa koodi nimesi tietokantoihin.
Ettﺣ۳ pitﺣ۳isi varmaan olla parametri joka tallennetaan jonnekin, ehkﺣ۳
vuonna config tiedoston, mutta pieni esimerkki nﺣ۳in,
se on okei kovaa koodia ettﺣ۳.
>> Joten nyt meillﺣ۳ on tﺣ۳mﺣ۳ Post luokka, joka perii perusmalli.
Ja se on, jﺣ۳lleen, ID = PrimaryKeyField.
Oikeastaan, jos et mﺣ۳ﺣ۳ritﺣ۳, jos olen itse saanut eroon tﺣ۳stﺣ۳,
sitten Peewee me huolehdimme automaattisesti luoda ettﺣ۳ ID-kenttﺣ۳,
ja se automaattisesti tekevﺣ۳t siitﺣ۳ perusavaimena, joka
Mielestﺣ۳ni on todella mukavaa, koska yleensﺣ۳, se on jotain haluat olla,
mutta haluan laittaa sen erityisesti, juuri niin muistan, ettﺣ۳ se on siellﺣ۳.
Mutta jos et mﺣ۳ﺣ۳ritﺣ۳ ettﺣ۳, ettﺣ۳ on siellﺣ۳ automaattisesti.
>> Niin, minulla on pﺣ۳ivﺣ۳mﺣ۳ﺣ۳rﺣ۳, joka on DateTimeField, ja kaikki
Nﺣ۳iden eri aloilla, jos katso peewee asiakirjat,
se tulee antaa sinulle listan eri tyyppisiﺣ۳ kenttiﺣ۳, joita voit kﺣ۳yttﺣ۳ﺣ۳.
Suurimmaksi osaksi, se on analoginen mitﺣ۳ olisi nﺣ۳hdﺣ۳ SQL.
Joten on CharField, VarCharFields, kenttiin,
jotka ovat kovin kauan tekstejﺣ۳, kuten blogi
mahdollisesti DateTimeFields, DoubleFields, FloatFields,
kaikki tuollaista.
>> Ja voit kulkea muita vﺣ۳itteitﺣ۳ sitﺣ۳, jota en mﺣ۳ﺣ۳ritellﺣ۳ tﺣ۳ssﺣ۳.
Sano esimerkiksi, et halua jotta kaksi virkaa on sama otsikko,
voit mﺣ۳ﺣ۳rittﺣ۳ﺣ۳ jotain ainutlaatuista = True,
ja se on vain ylimﺣ۳ﺣ۳rﺣ۳inen parametrin alalla ettﺣ۳ kun se kokoaa sen alas
osaksi SQL, se tﺣ۳smentﺣ۳ﺣ۳ ettﺣ۳ sen on oltava ainutlaatuinen.
Voit myﺣﭘs mﺣ۳ﺣ۳rittﺣ۳ﺣ۳ jotain ei null ja kaikki muut asiat
tavalliseen tapaan SQL.
Joten, tﺣ۳mﺣ۳ on melko yksinkertainen malli, joka on pﺣ۳ivﺣ۳mﺣ۳ﺣ۳rﺣ۳.
Huomata tﺣ۳ﺣ۳llﺣ۳, sisﺣ۳llﺣ۳ DateTimeField, Olen mﺣ۳ﺣ۳ritellyt mitﺣ۳ oletus on.
Olen mﺣ۳ﺣ۳ritelty sen olevan datetime.datetime.now,
sillﺣ۳ tavalla, ettﺣ۳ tﺣ۳mﺣ۳ saa arvioida,
se todella arvioi datetime.now kun
se saa tyﺣﭘnnetﺣ۳ﺣ۳n tietokantaan.
>> Luulen ettﺣ۳, olisin kaksinkertaistaa tarkistaa tﺣ۳mﺣ۳n,
mutta jos teit jotain tﺣ۳llaista, niin se todella arvioida, ettﺣ۳ kun,
ja sitten Aikaleiman olisi aina sama.
Joten, vain jos teet jotain kanssa datetimes, varmista
ettﺣ۳ se arvioidessaan kun todella saa asetettu, tai muuten
saatat olla hﺣ۳mmentynyt.
>> Otsikko on vain CharField, joka on
ovat argumentteja voit vﺣ۳littﺣ۳ﺣ۳ tﺣ۳smennetﺣ۳ﺣ۳n kuinka kauan olet
haluavat sen olevan, mutta tﺣ۳ﺣ۳llﺣ۳, se ei ole oikeastaan ﻗﻗvﺣ۳liﺣ۳.
Ja teksti tulee olemaan tekstin koko post,
ja ettﺣ۳ tulee olemaan TextField vain koska haluat
jotta se voi olla melko pitkﺣ۳ jono.
>> Sitten meillﺣ۳ on tﺣ۳mﺣ۳ Meta alaluokka ettﺣ۳ vain
tﺣ۳smennetﺣ۳ﺣ۳n, ettﺣ۳ haluamme tietokanta jos tﺣ۳mﺣ۳ on tosiaankin avanneet osaksi
olla db objekti, ettﺣ۳ meillﺣ۳ on tﺣ۳ﺣ۳llﺣ۳.
Ja viimeinen asia meillﺣ۳ tﺣ۳ﺣ۳llﺣ۳, on vain tﺣ۳mﺣ۳ toiminto
ettﺣ۳ aiomme kﺣ۳yttﺣ۳ﺣ۳ meidﺣ۳n tﺣ۳rkein App
alustaa tietokannan yhteyden se, ja sitten luoda Postin pﺣﭘytﺣ۳.
>> Nyt Katsotaanpa tﺣ۳rkein sovellus itse.
Joten tﺣ۳mﺣ۳ on melko hieman pidempi kuin mitﺣ۳
ettﺣ۳ olemme nﺣ۳hneet aiemmin, mutta toivottavasti ei liian huono.
Joten, haluaisin laajentaa tﺣ۳tﺣ۳.
Okei.
>> Niin, huomaa ja ylin Toin koko joukko muita asioita
pullosta ettﺣ۳ meillﺣ۳ ei todella ennen nﺣ۳hnyt.
Ja toivottavasti voimme kﺣ۳ydﺣ۳ lﺣ۳pi jokainen nﺣ۳istﺣ۳ yksitellen
ja puhua hieman enemmﺣ۳n ne, lajiteltu esimerkki.
Joten, meillﺣ۳ on pullo, ja render_template,
joka olemme nﺣ۳hneet aiemmin, tﺣ۳mﺣ۳ pyyntﺣﭘ esine,
joka tulee esille kun katsomme miten muodossa, ettﺣ۳ olin osoittaa todella
toimii.
Ohjata, jonka avulla voit ohjata takaisin Luo uusi viesti
takaisin alkuperﺣ۳iseen etusivulle, ja sitten URL, joka on jotain, jonka avulla voit
selvittﺣ۳ﺣ۳ missﺣ۳ verkkosivuilla tietyllﺣ۳ sivulla on.
>> Niin, seuraava minﺣ۳ teen, on tuon
kaikki tiedot Mallit tiedostot olimme vain katsomalla.
Ja, joo.
>> Niin, jotain muuta uutta, joka tulee , kun olet tekemisissﺣ۳,
erityisesti tietokannat, on, ettﺣ۳ voit mﺣ۳ﺣ۳rittﺣ۳ﺣ۳
toiminto, joka saa kutsutaan ennen jokaiseen pyyntﺣﭘﺣﭘn, ja toiminto, joka saa
kutsutaan jokaisen pyynnﺣﭘn, kﺣ۳yttﺣ۳en tﺣ۳tﺣ۳ toiminto sisustusarkkitehti app.before pyynnﺣﭘstﺣ۳.
>> Ja niin tﺣ۳mﺣ۳ saa suoritetaan missﺣ۳ tﺣ۳mﺣ۳ toiminto on.
Tﺣ۳mﺣ۳n ei tarvitse olla kutsutaan ennen pyynnﺣﭘstﺣ۳,
mutta yleensﺣ۳ se on jotain jﺣ۳rkevﺣ۳ﺣ۳ kutsua sitﺣ۳.
Voit mﺣ۳ﺣ۳rittﺣ۳ﺣ۳, mitﺣ۳ toiminto haluat saada kutsutaan siellﺣ۳,
joten olen tﺣ۳smentﺣ۳nyt tﺣ۳tﺣ۳ initialize_db toiminto, joka meillﺣ۳ oli takaisin Mallit
tiedosto, joten ennen jokaista pyyntﺣﭘﺣ۳, haluat muodostaa yhteyden tietokantaan.
>> On olemassa kaksi eri miten voit tehdﺣ۳ tﺣ۳mﺣ۳n.
Voit tehdﺣ۳app., I mielestﺣ۳mme on after_request.
Ja ero after_request ja teardown_request,
ettﺣ۳ after_request tapahtuu vain jos pyyntﺣﭘ todellisuudessa oli pﺣ۳tevﺣ۳.
Ja niin, vain jos pyyntﺣﭘ oli onnistunut,
jos mitﺣ۳ﺣ۳n meni pieleen, mutta teardown_request
tapahtuu tapauksessa, onnistuneen pyynnﺣﭘstﺣ۳ tai kun kyseessﺣ۳ virhe.
>> Niin, yleensﺣ۳, haluat kﺣ۳yttﺣ۳ﺣ۳ teardown_request,
ellet halua tehdﺣ۳ jotain, etenkin eri
kun kyseessﺣ۳ virhe.
Mutta vain sulkemiseksi tietokantaan, onko se onnistuu tai jos se epﺣ۳onnistuu,
me haluat katkaista tietokannasta.
Niin sitﺣ۳ kutsutaan, db.close DB esine.
>> Huomaa, ettﺣ۳ teardown_request vie poikkeus.
Joten voit tarkistaa, jos siellﺣ۳ oli todella virheen, kun se oli sulkemisesta,
mutta tﺣ۳ﺣ۳llﺣ۳, toivottavasti, siellﺣ۳ ei paljon virheitﺣ۳,
joten me vain erﺣ۳ﺣ۳nlainen piittaamatta siitﺣ۳.
>> Okei, ja loput se ei ole liian huono.
Joten, kun menemme kotiin sivulle, me tehneet tﺣ۳mﺣ۳n home.html malli
Tﺣ۳mﺣ۳ tulee avaamaan.
Pass on post sama, ja mitﺣ۳ tﺣ۳mﺣ۳
tekee on, muistan meillﺣ۳ on tﺣ۳mﺣ۳ viesti malli, joten me valita kaikki viestit,
ja sitten toinen asia mitﺣ۳ voi tehdﺣ۳, voit mﺣ۳ﺣ۳rittﺣ۳ﺣ۳ WHERE,
voit mﺣ۳ﺣ۳rittﺣ۳ﺣ۳ tilata, ja niin otamme
kaikki viestit, jotka saada valittu, ja sitten
tilaamme ne post.date.descending.
Ja ettﺣ۳ tﺣ۳smennetﺣ۳ﺣ۳n, kun ne todella tulevat ulos,
viimeisimmﺣ۳stﺣ۳ on aivan ensimmﺣ۳inen.
>> Ja sitten, me siirtﺣ۳ﺣ۳ sen osaksi home.html malli,
joten katsotaanpa todella avata ettﺣ۳ malli todella nopea,
ja katsomaan, miten se toimii.
Ja tﺣ۳mﺣ۳ ei ole suuri HTML, mutta Toivottavasti voimme keskittyﺣ۳ Python.
>> Joten siellﺣ۳ on linkki Lisﺣ۳ﺣ۳ uusi Post, ja niin tﺣ۳mﺣ۳ tﺣ۳smennetﺣ۳ﺣ۳n reitti
sisﺣ۳llﺣ۳ pullo ettﺣ۳ me mﺣ۳ﺣ۳ritellﺣ۳, mikﺣ۳ on tﺣ۳ﺣ۳llﺣ۳.
Tﺣ۳mﺣ۳ on uusi viesti reitti, ja me tﺣ۳smentﺣ۳ﺣ۳, ettﺣ۳ tﺣ۳ﺣ۳llﺣ۳.
Ja niin se on linkki, joka sitten mennﺣ۳ tﺣ۳lle reitille sisﺣ۳llﺣ۳ pullo palvelimen.
>> Enemmﺣ۳n mielenkiintoinen juttu on tﺣ۳mﺣ۳ silmukka tﺣ۳ﺣ۳llﺣ۳.
Joten me tﺣ۳smentﺣ۳ﺣ۳, ettﺣ۳ tﺣ۳mﺣ۳ post parametri joka
johdettiin render_template funktio,
jokaista virkaa Postin esine, joka saa siirtﺣ۳ﺣ۳ vuonna.
Haluamme tulostaa post otsikko, H1,
ja sitten alla haluamme tulostaa post tekstiﺣ۳ kohta.
>> Ja tﺣ۳ﺣ۳llﺣ۳, voimme todella soittaa Python-toiminto,
jotta voimme soittaa strftime, ST-RF-aika, ja voit kulkea muotomerkkijonoa
ettﺣ۳ haluat tulostaa tiedot ulos.
Joten se on ihan mukavaa, ettﺣ۳ voit oikeastaan ﻗﻗkutsua tﺣ۳tﺣ۳ Python toiminto
sisﺣ۳llﺣ۳ tﺣ۳ﺣ۳ltﺣ۳.
Sinun ei tarvitse tehdﺣ۳ muotoilua pﺣ۳ﺣ۳lle ohjain puolella, koska todella,
alustus pﺣ۳ivﺣ۳mﺣ۳ﺣ۳rﺣ۳ on jotain, joka haluat kﺣ۳sitellﺣ۳ sisﺣ۳llﺣ۳ View.
>> Ja kaikki nﺣ۳mﺣ۳ prosenttia asiat ei ole super tﺣ۳rkeﺣ۳ﺣ۳.
Jos katsot asiakirjat varten strftime toiminto Python,
se mﺣ۳ﺣ۳rittelee kaikki nﺣ۳mﺣ۳ asioita, mutta se on
miten, kun etsimme kotisivulta tﺣ۳ﺣ۳llﺣ۳,
se muotoilee tﺣ۳mﺣ۳ mukava pﺣ۳ivﺣ۳mﺣ۳ﺣ۳rﺣ۳, ja se tﺣ۳smennetﺣ۳ﺣ۳n AM tai PM,
mutta yleensﺣ۳, jos ei ollut tﺣ۳ﺣ۳llﺣ۳,
saat todennﺣ۳kﺣﭘisesti joitakin roskat pﺣ۳ivﺣ۳mﺣ۳ﺣ۳rﺣ۳, ei nﺣ۳ytﺣ۳ kovin hyvﺣ۳ltﺣ۳.
Ja sitten me mﺣ۳ﺣ۳ritﺣ۳ post.text, ja voisin
ovat tehneet pari rivinvaihdot tﺣ۳ﺣ۳llﺣ۳, vain
laittaa vﺣ۳lejﺣ۳ kunkin postitse.
>> Joten luulen tﺣ۳rkein asia tﺣ۳ssﺣ۳ esimerkissﺣ۳,
on, ettﺣ۳ voit kﺣ۳yttﺣ۳ﺣ۳ tﺣ۳tﺣ۳ silmukka.
Ja tﺣ۳mﺣ۳ on analoginen mitﺣ۳ voi tehdﺣ۳ PHP.
Voit kerrata kautta, kaikki saa hyvﺣ۳ksyttiin,
ja niin sen sijaan, tehdﺣ۳ copy / paste, copy / paste kaikki HTML,
sinun tﺣ۳ytyy vain kirjoittaa sitﺣ۳ kerran, ja sitten voit kerrata hoitaakseen kaikki virat.
>> Ja tﺣ۳mﺣ۳ on jotain yleistﺣ۳, ettﺣ۳ haluat
tehdﺣ۳, kun sinulla on paljon tietoa, on se, ettﺣ۳ kaikki tietosi,
haluat tehdﺣ۳ samanlainen asia.
Ja sitten, vain muistaa, ettﺣ۳ kun haluavat tulostaa jotain nimenomaisesti
HTML, kﺣ۳ytﺣ۳t kaksinkertainen olkaimet tﺣ۳ﺣ۳llﺣ۳,
mutta sitten kun haluat mﺣ۳ﺣ۳rittﺣ۳ﺣ۳ joitakin tietoja kunnossa,
tai noin varten silmukka, sinulle Kﺣ۳ytﺣ۳ prosenttia kiinnike.
>> Joten, menee takaisin Python koodi, niin ettﺣ۳ kertoo
mitﺣ۳ tapahtuu pﺣ۳ﺣ۳asiassa reitin, kun menemme sinne,
se vain nﺣ۳yttﺣ۳ﺣ۳ kaikki virkaa, mutta sitten kysymys
on, miten me itse saada virkaa tietokantaan, joka
on hieman mielenkiintoisempi.
>> Joten, kun klikkaat Uusi Post linkki, josta nﺣ۳imme tﺣ۳ﺣ۳llﺣ۳,
se ohjaa sinut tﺣ۳mﺣ۳n lomakkeen.
Ja tﺣ۳mﺣ۳ on vain yksinkertainen puhelun render_template toiminto, joka sitten
kulkee uusi viesti HTML muodossa.
Joten katsomaan joka.
Joten tﺣ۳mﺣ۳ on melko yksinkertainen.
Se on yksinkertainen HTML-lomake, joka nﺣ۳yttﺣ۳ﺣ۳ hieman tuttu,
perustuu muotoja CS50 Finance.
Ja niin, me mﺣ۳ﺣ۳rittﺣ۳ﺣ۳ tﺣ۳ﺣ۳llﺣ۳, toiminta.
Ja tﺣ۳ssﺣ۳, jos olet tyﺣﭘskennellyt PHP, normaalisti, se
olisi jotain, create.PHP, mutta tﺣ۳ssﺣ۳
me oikeastaan ﻗﻗmﺣ۳ﺣ۳rittﺣ۳ﺣ۳ reitti sisﺣ۳llﺣ۳ pullo palvelimen.
Ja niin, tﺣ۳stﺣ۳ reitistﺣ۳ vastaa ja luoda reitti
ettﺣ۳ olemme tﺣ۳ﺣ۳llﺣ۳, joka me mennﺣ۳ toiseen.
>> Ja niin, me mﺣ۳ﺣ۳rittﺣ۳ﺣ۳, ettﺣ۳ se postitse menetelmﺣ۳,
koska haluamme lﺣ۳hettﺣ۳ﺣ۳ Tﺣ۳mﺣ۳n lomakkeen tiedot, ja yleensﺣ۳
Kun lﺣ۳hetﺣ۳t tietoja muodossa, saatat haluta kﺣ۳yttﺣ۳ﺣ۳ virkaan pyynnﺣﭘstﺣ۳,
vain niin et pﺣ۳ﺣ۳dy Tﺣ۳mﺣ۳n iso, kankea URL.
Mutta voit myﺣﭘs kﺣ۳yttﺣ۳ﺣ۳ GET-pyynnﺣﭘn, ja siirtﺣ۳ﺣ۳ sen vaihtelevalla reititys,
mutta muodot, se on mukava post pyynnﺣﭘn tﺣ۳ﺣ۳llﺣ۳.
Ja niin sitten, kuten sinﺣ۳kin tekisi HTML ja PHP,
voit mﺣ۳ﺣ۳rittﺣ۳ﺣ۳ nﺣ۳mﺣ۳ tekstin tuloa, ja voit mﺣ۳ﺣ۳rittﺣ۳ﺣ۳ nimi heistﺣ۳,
ja se nimi, joka pﺣ۳ﺣ۳stﺣ۳ ohi osaksi pyyntﺣﭘ esineen pulloon.
>> Ja sitten olemme Lﺣ۳hetﺣ۳ painiketta, jossa lukee Post.
Ja tﺣ۳ﺣ۳llﺣ۳, Post on nimi painiketta, koska se on blogi,
mutta tﺣ۳ﺣ۳llﺣ۳, viesti on pyynnﺣﭘstﺣ۳ menetelmﺣ۳.
Joten ne ovat sama sana mutta todellisuudessa liity.
Joo
>> Palataan Python koodia, kun soitimme luoda menetelmﺣ۳,
huomata tﺣ۳ssﺣ۳, ettﺣ۳ voit todella mﺣ۳ﺣ۳ritﺣ۳ sisﺣ۳llﺣ۳ reitti
pyyntﺣﭘ menetelmﺣ۳t ettﺣ۳ haluat hyvﺣ۳ksyﺣ۳,
ja niin tﺣ۳ﺣ۳llﺣ۳, voin mﺣ۳ﺣ۳rittﺣ۳ﺣ۳, ettﺣ۳ minﺣ۳ vain halua hyvﺣ۳ksyﺣ۳ Post menetelmﺣ۳llﺣ۳.
Joten, jos olen itse yrittﺣ۳ﺣ۳ kﺣ۳ydﺣ۳ sivulla suoraan, joka kﺣ۳yttﺣ۳ﺣ۳ GET-pyynnﺣﭘn,
se kertoo minulle "Menetelmﺣ۳ ei sallita."
>> Ja niin, sinulla on sivuja, erﺣ۳ﺣ۳nlainen kuten Luo sivu, joka olen vain
todella kﺣ۳yttﺣ۳en tapa lomake saada toimitettu,
voit mﺣ۳ﺣ۳rittﺣ۳ﺣ۳, ettﺣ۳ et halua ihmisten pystyﺣ۳ mennﺣ۳ sinne
suoraan GET pyynnﺣﭘn, tai jos et halua,
jostain syystﺣ۳, Post pyyntﺣﭘ, voit vain mﺣ۳ﺣ۳ritellﺣ۳ tﺣ۳nne,
mutta tﺣ۳ssﺣ۳ esimerkissﺣ۳, me vain haluavat Post pyynnﺣﭘn mennﺣ۳ ulos.
>> Joten, kun create_post kutsutaan, kun vierailemme ettﺣ۳ kautta Postin pyynnﺣﭘstﺣ۳,
kun menet tiettyyn reitti, on tﺣ۳mﺣ۳ pyyntﺣﭘ esine,
ja meidﺣ۳n piti tuoda pyynnﺣﭘt huipulla,
mutta on tﺣ۳mﺣ۳ pyyntﺣﭘ esine, joka saa siirtﺣ۳ﺣ۳ vuonna,
ja voit kﺣ۳yttﺣ۳ﺣ۳ lomakkeen tiedot, joka automaattisesti saa tﺣ۳ytettyinﺣ۳
kun lﺣ۳hetﺣ۳t pyynnﺣﭘn muodossa.
>> Ja sitten, mitﺣ۳ ajattelen on todella siistiﺣ۳, on
ettﺣ۳ lomake tavoite saada lﺣ۳pﺣ۳issyt vuonna, on vain Python sanakirjaa
sisﺣ۳ltﺣ۳ﺣ۳, jos access-- joten tﺣ۳ssﺣ۳, anna minut Vedﺣ۳ HTML vieressﺣ۳, vain
joten voit olla ettﺣ۳ apuna, kyllﺣ۳, joten
nimiﺣ۳ ettﺣ۳ me mﺣ۳ﺣ۳rittﺣ۳ﺣ۳ tﺣ۳ﺣ۳llﺣ۳ eri alojen, joten
otsikko ja teksti, me sitten vain kﺣ۳yttﺣ۳ﺣ۳ nﺣ۳itﺣ۳ tﺣ۳nne
indekseinﺣ۳ muotoon tiedot.
Niin se on erittﺣ۳in kﺣ۳tevﺣ۳.
>> Niin silloin me kutsumme post.create, joka luo ja automaattisesti lisﺣ۳tﺣ۳
tﺣ۳mﺣ۳ uusi viesti esine tietokantaan.
Ja mielestﺣ۳ni tﺣ۳mﺣ۳ luo toiminto tﺣ۳ssﺣ۳ todella siistiﺣ۳ esimerkki siitﺣ۳, miten
voimakas Pullo ja tyﺣﭘskennellﺣ۳ tﺣ۳mﺣ۳n, koska jos olit tekemﺣ۳ssﺣ۳ jotain
PHP, saatat joutua tehdﺣ۳ paljon validointi,
sinun olisi sitten luoda tietokanta yhteys,
sinun olisi sitten suorittaa SQL-kysely,
mutta tﺣ۳ﺣ۳llﺣ۳ meillﺣ۳ on vain tﺣ۳mﺣ۳ mukava post.create, joita voimme sitten vain
saada tietoa ulos pyynnﺣﭘn kohteen,
ja sitten siirtﺣ۳ﺣ۳ se uuteen post ettﺣ۳ olemme luomassa.
>> Ja sitten, aivan viime asia haluamme tehdﺣ۳,
on suunnata kﺣ۳yttﺣ۳jﺣ۳n takaisin kotiin.
Ja niin kﺣ۳ytﺣ۳mme tﺣ۳tﺣ۳ Pulloon ohjata toiminto.
Ja jotain, emme olleet nﺣ۳hneet ennen, oli tﺣ۳mﺣ۳ URL toiminto.
Joten URL toiminnon avulla ohitat itse asiassa nimi
funktion teidﺣ۳n Python koodia, pikemminkin kuin tietyllﺣ۳ reitillﺣ۳
ettﺣ۳ se on klo.
>> Niin voisin olla aivan yhtﺣ۳ helposti ohjataan kﺣ۳yttﺣ۳jﺣ۳ leikata,
joka lﺣ۳hettﺣ۳ﺣ۳ sen takaisin kotiin, mutta kﺣ۳yttﺣ۳en URL-toiminto on mukava,
koska jos muutat paikka, jossa asiat ovat,
joten sanotaan, ettﺣ۳ muutan koti olla / home sijaan,
tﺣ۳mﺣ۳ olisi silti palaa / kotiin, koska todella menee ja hakee
funktion nimi, ja se antaa sinulle takaisin URL ettﺣ۳.
>> Niin, tavallaan on oletetaan, ettﺣ۳ olet
todennﺣ۳kﺣﭘisemmin muuttaa, jos asiat ovat, kuin nimet toimintoja.
Voit kﺣ۳yttﺣ۳ﺣ۳ tﺣ۳tﺣ۳ todella mukava URL toiminto.
Ja yksi asia olla tietoinen ettﺣ۳ on hieman hankala,
on, ettﺣ۳ luulet voisi vain soita uudelleenohjaus on URL,
mutta todellisuudessa kaikki reitit ovat palata jonkinlainen tekstiﺣ۳ ja HTML,
joten sinun todella tﺣ۳ytyy palata uudelleenohjaus puhelun.
Muussa tapauksessa saat jotain virheellinen noin ei palaa merkkijono,
koska kaikki nﺣ۳mﺣ۳ on palattava HTML todella haluat tehdﺣ۳.
>> Ja niin, kun soitat uudelleenohjaus, se ohjaa sinut sivulle,
mutta se todella palauttaa HTML sinun tﺣ۳ytyy suorittaa, ettﺣ۳ uudelleenohjaus.
Mene takaisin kotisivulle.
Joten meillﺣ۳ on nﺣ۳mﺣ۳ kaksi erilaista nﺣ۳kemystﺣ۳.
Meillﺣ۳ on koti nﺣ۳kymﺣ۳.
Tai kai pitﺣ۳isi sanoa malleja.
Meillﺣ۳ on nﺣ۳mﺣ۳ kaksi mallia, koti malli joka
nﺣ۳yttﺣ۳ﺣ۳ kaikki meidﺣ۳n virkaa, ja sitten meillﺣ۳ on tﺣ۳mﺣ۳ mainos juttu,
ja kun klikkaat postitse, se menee uudelle reitille sisﺣ۳llﺣ۳ pulloon,
mutta reitti ei vﺣ۳lttﺣ۳mﺣ۳ttﺣ۳ on vastaava malli.
Sinun ei tarvitse nﺣ۳hdﺣ۳ mitﺣ۳ﺣ۳n, mutta voit silti
on tﺣ۳mﺣ۳n tyﺣﭘn takana kulissien takana.
Ja sitten saat ohjataan Takaisin etusivulle.
Ja ehdottomasti, se on helppo tyﺣﭘskennellﺣ۳ joissakin mukavampaa CSS malliin
ja tehdﺣ۳ tﺣ۳mﺣ۳ nﺣ۳yttﺣ۳ﺣ۳ paljon mukavampaa, mutta kaikki tﺣ۳rkeimmﺣ۳t logiikan
on siellﺣ۳ Python.
>> Kysyttﺣ۳vﺣ۳ﺣ۳ ettﺣ۳ esimerkiksi?
Tiedﺣ۳n, ettﺣ۳ on paljon eri asioita tapahtuu siellﺣ۳,
paljon asioita emme olleet nﺣ۳hneet ennen, mutta kuin mitﺣ۳ﺣ۳n.
Joo.
>> YLEISﺣ 1: Onko teillﺣ۳ tehdﺣ۳ mitﺣ۳ﺣ۳n erityinen hangata tietoja, jotka ovat
tulleen muodossa?
Huomasin juuri sanoi "luoda"
EZRA ZIGMOND: Joo, niin se on Oikeastaan ﻗﻗse on todella hyvﺣ۳ pointti.
Joten kysymys oli, oletteko tﺣ۳ytyy tarkistaa ja varmistaa
ettﺣ۳ tiedot on voimassa, ja tehdﺣ۳ minkﺣ۳ﺣ۳nlaisia ﻗﻗpesee
varmistaa, ettﺣ۳ se on voimassa, koska kuten voitte nﺣ۳hdﺣ۳ tﺣ۳ﺣ۳llﺣ۳,
En tee sitﺣ۳.
Joten mitﺣ۳ tapahtuu jos lﺣ۳hetﺣ۳n jotain tyhjﺣ۳.
Niin, se tulee oikeastaan ﻗﻗvain tehdﺣ۳ tyhjﺣ۳ virka ja tﺣ۳yttﺣ۳ﺣ۳ Aikaleiman.
>> Joten todellisuudessa, olet luultavasti haluavat tehdﺣ۳ jotain,
ehkﺣ۳ mﺣ۳ﺣ۳rittﺣ۳ﺣ۳, otsikko on sama kuin tyhjﺣ۳ merkkijono, niin ﺣ۳lﺣ۳ tee tﺣ۳tﺣ۳.
Tai vain tehdﺣ۳ se, jos otsikko on ei vastaa tyhjﺣ۳ﺣ۳ merkkijonoa.
Joten se ei ole oikeastaan ﻗﻗautomaattisesti huolehtia, ettﺣ۳ pesee
sinulle, joten sinun pitﺣ۳ﺣ۳ vielﺣ۳ tehdﺣ۳.
Joo, hyvﺣ۳ kysymys.
>> YLEISﺣ 2: Onko se pensaikkoa sillﺣ۳ jatko injektio?
Tiedﺣ۳tkﺣﭘ?
>> EZRA ZIGMOND: Toivottavasti peewee tekee sen.
Mielestﺣ۳ni olisi varmasti aika huono kirjasto jos se ei tehnyt sitﺣ۳.
En tiedﺣ۳ tarkalleen.
Minun pitﺣ۳isi katsoa kysely ettﺣ۳ se syntyy.
Uskon, ettﺣ۳, jos olen kirjoittanut blogikirjoitus tﺣ۳llaista nﺣ۳ytti
kuten SQL-injektio hyﺣﭘkkﺣ۳ys, jotain tﺣ۳llaista, jos tﺣ۳mﺣ۳
muistuttaa salasanaa kenttﺣ۳ tai jotain, saatat tehdﺣ۳ jotain tﺣ۳llaista.
>> Uskon, ettﺣ۳ tulee vielﺣ۳ saada kirjaimellisesti lﺣ۳hetetty,
mutta luulen, ettﺣ۳ peewee ei tehdﺣ۳ jonkinlainen pesee tietojen
ennen kuin se itse suorittaa sen.
>> YLEISﺣ 1: Tﺣ۳mﺣ۳ teksti kenttﺣ۳ on suunniteltu ottamaan vain teksti, eikﺣﭘ?
>> EZRA ZIGMOND: Joo, se on.
Joo.
Joten luulen, ettﺣ۳ kaikki, niin tﺣ۳mﺣ۳ on oikea kﺣ۳yttﺣ۳ytyminen, joka tekee sen,
mutta luulen, ettﺣ۳ peewee toivottavasti ei tehdﺣ۳
jonkinlainen suoja heidﺣ۳n puolellaan.
Ja jos halusi varmista, ettﺣ۳ siellﺣ۳
tavoilla, kun luoda kyselyn.
joten sinun ei tarvitse suorittaa sen suoraan.
Olisin otettava katso dokumentaatio,
mutta voit itse katsella SQL ettﺣ۳ se on tuottaa,
ja katsomaan, ettﺣ۳ ja tehdﺣ۳ ettﺣ۳ se on paeta asioita.
>> Toinen syy, miksi saatat halua katsoa SQL
ettﺣ۳ peewee on syﺣﭘttﺣﭘﺣ۳, on jos asiat nﺣ۳yttﺣ۳vﺣ۳t menevﺣ۳n todella hitaasti,
voit katsoa ja nﺣ۳hdﺣ۳, mitﺣ۳ se todella tekee, koska se on joskus
helppo vahingossa lisﺣ۳tﺣ۳ vuonna, niin kuin kirjoittaa sitﺣ۳,
voit vahingossa saada sitﺣ۳ Valitse koko tietokannan ensimmﺣ۳inen,
ja sitten tehdﺣ۳ jonkinlainen toiminta siitﺣ۳ ettﺣ۳, kun todella
tarkoitus valita osajoukko.
>> Ja niin, jos asiat eivﺣ۳t ole aivan menossa oikea,
on hyvﺣ۳ vilkaista pyynnﺣﭘstﺣ۳ joka on todella saada syntyy.
Joo.
>> YLEISﺣ 2: Kun aloitin, laitat satamassa 5000.
>> EZRA ZIGMOND: Joo.
YLEISﺣ 2: Onko oletuksena kanssa peewee, vai onko tﺣ۳mﺣ۳ jotain, voit vaihtaa?
EZRA ZIGMOND: Kyllﺣ۳, niin portti on oletuksena pulloon.
Jos kﺣ۳yttﺣ۳ﺣ۳ sitﺣ۳ ilman tﺣ۳smennetﺣ۳ﺣ۳n mitﺣ۳ﺣ۳n,
se automaattisesti tehdﺣ۳.
Uskon, olisin kaksinkertaistaa tarkistaa tﺣ۳mﺣ۳n,
mutta voit mﺣ۳ﺣ۳rittﺣ۳ﺣ۳, ettﺣ۳ app.run, Mielestﺣ۳ni voit tehdﺣ۳ jotain,
portti = 8080.
Annetaan ettﺣ۳ yrittﺣ۳ﺣ۳ todella nopeasti.
Joo, niin voit vain mﺣ۳ﺣ۳rittﺣ۳ﺣ۳ portti = 8080, ja se toimii sen siellﺣ۳,
joka mielestﺣ۳ni, jos halusi kﺣ۳yttﺣ۳ﺣ۳ sitﺣ۳ IDE, en ole kokeillut tﺣ۳tﺣ۳,
mutta luulen, ettﺣ۳ jos juoksi se portissa 8080,
haluat luultavasti pystyﺣ۳ pﺣ۳ﺣ۳sy palvelimelle,
aivan kuten olit verkkosivuilla.
>> Joo, mutta se on helppoa muuttaa ettﺣ۳ jos
mitﺣ۳ﺣ۳n tavallaan kuin satama-huolinta asioita, jotka sinun tﺣ۳ytyy tehdﺣ۳.
>> Muita kysymyksiﺣ۳?
Joo?
YLEISﺣ 1: Niin, minﺣ۳ nﺣ۳in teidﺣ۳n malleja, kuten sanoitte,
sinun on mﺣ۳ﺣ۳ritettﺣ۳vﺣ۳ tietokanta kunkin objektin.
Onko satut tietﺣ۳ﺣ۳, ei joiden avulla on helppoa, jos
on paljon SQLite tietokantoja sinua haluat kﺣ۳yttﺣ۳ﺣ۳ yhden Web App,
ettﺣ۳ voit vain mﺣ۳ﺣ۳rittﺣ۳ﺣ۳ nippu Eri olevista oman mallin?
>> EZRA ZIGMOND: Joo, haluan avaa ettﺣ۳ jopa todella nopeasti.
Joten, sanot, jos haluat olla joukko eri jotain, ehkﺣ۳
Pidﺣ۳n ja opiskelijoita, joidenkin syy, jotain sellaista?
Joo, joten uskon, ettﺣ۳ silti, jokainen malli
olisi edelleen vain yksi tietokanta sille,
mutta jos halusi saada eri malleja
ovat eri tietokantaobjektien annetaan sen, voit varmasti tehdﺣ۳ sen.
Joten, jos olen luonut uuden, jotain tﺣ۳llaista,
ja nyt tﺣ۳mﺣ۳ on opiskelija, joka nﺣ۳yttﺣ۳ﺣ۳ kumma kuin blogi,
Voisin tﺣ۳smentﺣ۳ﺣ۳, ettﺣ۳ tietokanta on sama kuin db_2 tﺣ۳ﺣ۳llﺣ۳.
Joten luulen, ettﺣ۳ se tﺣ۳rkein tapa voit tehdﺣ۳ sen.
>> Viileﺣ۳.
Muita kysymyksiﺣ۳?
>> Joten loppuun asti hieman bittinen, tﺣ۳ssﺣ۳ on muutamia vihjeitﺣ۳,
ja nﺣ۳mﺣ۳ dioja julkaistaan ﻗﻗverkossa joten voit itse saada nﺣ۳mﺣ۳ linkit.
Parhaat resurssit ovat todella asiakirjat pullo
ja Peewee itse.
He kirjoitettu todella hyvin, luulen.
Joten, taskumatti sivusto on tﺣ۳ﺣ۳llﺣ۳, ja heillﺣ۳ quickstart opetusohjelma,
kﺣ۳velee lﺣ۳pi samankaltaisia asioita mitﺣ۳ Kﺣ۳velin lﺣ۳pi,
mutta jos haluat minkﺣ۳ﺣ۳nlaista arvostelu asioita, jotka menin,
tai luulit, ettﺣ۳ selitin jotain sekava tavalla,
he ovat samanlaisia ﻗﻗesimerkkeinﺣ۳.
>> Peewee on asiakirjat, ja heillﺣ۳ quickstart opetusohjelma
ettﺣ۳ menee tﺣ۳rkeimmistﺣ۳ muuttujista ettﺣ۳ haluaisi kﺣ۳yttﺣ۳ﺣ۳.
Joten, mitﺣ۳ puhuin kanssa ainutlaatuinen, ja tﺣ۳smennetﺣ۳ﺣ۳n oletusarvot,
erilaisia ﻗﻗkenttiﺣ۳ voit kﺣ۳yttﺣ۳ﺣ۳, niitﺣ۳ olisivat kaikki siellﺣ۳.
>> Lisﺣ۳ksi, jos sinulla on kysymyksiﺣ۳ peewee,
ja lﺣ۳hetﺣ۳t ne StackOverflow, kaveri joka teki peewee todella
jatkuu ja vastauksia niihin joskus.
Jos sinulla on kysymys, toivottavasti hﺣ۳n voi vastata siihen,
koska hﺣ۳n kirjoitti koko asia.
Uskon, ettﺣ۳ kaikki Halusin kattamaan.
Kiitos, ettﺣ۳ tulit ulos.