From flask import Flask app = Flask




Download 252,31 Kb.
bet9/13
Sana30.07.2024
Hajmi252,31 Kb.
#268934
1   ...   5   6   7   8   9   10   11   12   13
Bog'liq
Flask notes

from flask import make_response

@app.route('/')


def index():
resp = make_response(render_template(...))
resp.set_cookie('username', 'the username')
return resp
Cookie-fayllar javob ob'ektlarida o'rnatilganligini unutmang. Odatda ko'rish funktsiyalaridan satrlarni qaytarganingiz uchun Flask ularni siz uchun javob ob'ektlariga aylantiradi. Agar buni aniq qilishni istasangiz, funktsiyadan foydalanishingiz make_response()va keyin uni o'zgartirishingiz mumkin.
Ba'zan siz javob ob'ekti hali mavjud bo'lmagan joyda cookie faylini o'rnatishni xohlashingiz mumkin. Buni kechiktirilgan so'rovni qayta qo'ng'iroq qilish sxemasidan foydalanish orqali amalga oshirish mumkin.
Buning uchun javoblar haqida ham qarang .
Qayta yo'naltirishlar va xatolar 
Foydalanuvchini boshqa so'nggi nuqtaga yo'naltirish uchun redirect() funksiyadan foydalaning; Xato kodi bilan so'rovni erta bekor qilish uchun abort()funktsiyadan foydalaning:
from flask import abort, redirect, url_for

@app.route('/')


def index():
return redirect(url_for('login'))

@app.route('/login')


def login():
abort(401)
this_is_never_executed()
Bu juda ma'nosiz misol, chunki foydalanuvchi indeksdan o'zi kira olmaydigan sahifaga yo'naltiriladi (401 kirish taqiqlangan degan ma'noni anglatadi), lekin bu qanday ishlashini ko'rsatadi.
Odatiy bo'lib, har bir xato kodi uchun qora va oq xato sahifasi ko'rsatiladi. Agar siz xato sahifasini moslashtirmoqchi bo'lsangiz, errorhandler()dekoratordan foydalanishingiz mumkin:
from flask import render_template

@app.errorhandler(404)


def page_not_found(error):

Download 252,31 Kb.
1   ...   5   6   7   8   9   10   11   12   13




Download 252,31 Kb.

Bosh sahifa
Aloqalar

    Bosh sahifa



From flask import Flask app = Flask

Download 252,31 Kb.