Searching Articles

Kategori: Python / Flask , 19 Eylül 2019 , JanFranco


Yazılar arasında arama yapmak için bir fonksiyon yazalım. Fonksiyona geçmeden önce articles.html dosyasını oluştururken zaten eklemiştik fakat kutunun kodlarını tekrar paylaşalım:


<form class="form-inline" action="/search" method="POST">
	<input class="form-control mr-sm-2" type="text" name="keyword" placeholder="Ara" aria-label="Search">
</form>
Ana dosyamızda search() fonksiyonunu oluşturalım:


@app.route("/search", methods = ["GET", "POST"])
def search():
    if request.method == "POST":
        keyword = request.form.get("keyword")
        cursor = mysql.connection.cursor()
        query = "SELECT * FROM articles WHERE title LIKE '%" + keyword + "%'"
        result = cursor.execute(query)

        if result > 0:
            articles = cursor.fetchall()
            return render_template("articles.html", articles = articles)
        else:
            flash("No article!" + keyword, category="warning")
            return redirect(url_for("articles"))
    else:
        return redirect(url_for("index"))
Burada yine iki methodumuz mevcut. POST methodu ile işlem yapılırsa arama kutusundaki yazı çekilecek ve yazıların başlığına göre arama yapılacak. Eğer sonuç bulunursa, bulunan sonuçlar articles değişkeni ile articles.html dosyasına gönderilecek. Eğer bulunamazsa hata mesajı dönecek.


Sonraki Yazı: ORM, SQLite, Installation
Yorumlar

Henüz bir yorum bulunmuyor.
Yorum bırakın