Välimuistita view cachedilla
Tallenna kokonaiset vastaukset URL-osoitteen perusteella.
Välimuistita view cachedilla on ilmainen Flask Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Flask Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Flask Academy-kurssilla on yhteensä 4 oppituntia.
Kokonaisten vastausten välimuistitus
Joidenkin sivujen muodostaminen vaatii paljon työtä. cached-dekorattori tallentaa koko vastauksen, joten palaavat kävijät saavat sen välittömästi.
Käytä dekorattoria
Lisäätte @cache.cached()-dekorattorin suoraan näkymäfunktion yläpuolelle. Ensimmäinen pyyntö suorittaa funktion, myöhemmät toistavat tallennetun tuloksen.
@app.route("/report")
@cache.cached()
def report():
return build_report()Dekoraattorien järjestys
Järjestyksellä on merkitystä. Asettakaa @app.route ylimmäksi ja @cache.cached sen alapuolelle, jotta reititys tapahtuu ennen välimuistin käyttöä.
Aseta näkymäkohtainen aikakatkaisu
Voitte ohittaa yleisen asetuksen näkymäkohtaisesti. timeout-argumentti kertoo, kuinka monta sekuntia kyseinen vastaus säilyy tuoreena.
@cache.cached(timeout=60)
def report():
...Välimuisti pyynnön polun perusteella
Oletusarvoisesti välimuistiavain on request path. Siksi /report ja /report/extra tallennetaan erillisinä, toisistaan riippumattomina tietueina.
Kyselymerkkijonot ohitetaan
Huomioikaa, että oletusavain ohittaa kyselymerkkijonon. Siksi /list?page=2 ja /list?page=3 käyttäisivät samaa välimuistimerkintää.
Vaihtele koko URL-osoitteen perusteella
Jos haluatte erotella tulokset kyselymerkkijonon perusteella, asettakaa query_string=True. Nyt jokainen yksilöllinen URL-osoite parametreineen saa oman välimuistissa olevan vastauksensa.
@cache.cached(query_string=True)
def listing():
...Mukautetut välimuistiavaimet
Tarvitsetteko täyden hallinnan? Välittäkää make_cache_key-funktio, joka muodostaa avaimen itse, esimerkiksi lisäämällä siihen nykyisen käyttäjän.
@cache.cached(make_cache_key=my_key)Välimuistita vain turvalliset metodit
Välimuistittakaa GET-pyynnöt, älkää koskaan POST-pyyntöjä. Kirjoitusoperaation välimuistitus toistaisi vanhan rungon ja ohittaisi käyttäjien odottamat sivuvaikutukset.
Ohita välimuisti tarvittaessa
Palauttakaa unless-ehto, kun ehto täyttyy, jolloin näkymä suoritetaan joka kerta uudelleen. Tämä on kätevää, kun välimuisti halutaan ohittaa kirjautuneilta käyttäjiltä.
@cache.cached(unless=lambda: g.user)Ensimmäinen osuma ja myöhemmät osumat
Ensimmäinen pyyntö on cache miss ja suorittaa työn. Jokainen myöhempi pyyntö aikakatkaisun aikana on nopea välimuistiosuma.
Pikatarkistus
Luettelosivunne käyttää ?page=-parametria, mutta jokaisella sivulla näkyy sama välimuistissa oleva sisältö.
Kertaus: näkymien välimuistitus
Opitte käärimään näkymät @cache.cached-dekorattorilla, säätämään aikakatkaisua, muodostamaan avaimen koko URL-osoitteen perusteella ja ohittamaan välimuistituksen kirjoitusoperaatioissa. 🚀
Opi Python tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 30
- Oppitunnit
- 120
Usein kysytyt kysymykset
Onko oppitunti ”Välimuistita view cachedilla” ilmainen?
Kyllä – oppitunnin ”Välimuistita view cachedilla” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Flask Academy-kurssin, päivitä CoddyKit PROhon. Flask Academy-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Välimuistita view cachedilla”?
Tallenna kokonaiset vastaukset URL-osoitteen perusteella. Harjoittelet Flask Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Flask Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Flask Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/4.
Kuinka kauan ”Välimuistita view cachedilla”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Flask Academy-oppitunnilla?
Kyllä. Jokainen Flask Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Määritä Flask-Caching
- Välimuistita view cachedilla
- Välimuistita raskaat funktiot
- Virheellistä välimuisti ja vanhentuneet merkinnät