Dynamic URL for Articles

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


Yazı oluşturabiliyoruz, kendi yazılarımızı kullanıcı panelinde görüntüleyebiliyoruz. Ayrıca ana sayfada tüm kullanıcıların yazılarını görüntüleyebiliyoruz. Ancak yazıların detayını görüntüleyemiyoruz. Bunun için article.html adında bir dosya oluşturalım:


{% extends "layout.html" %}

{% block body %}
    {% if article %}
        <h4>{{ article.title }}</h4>
        <h6 style="float: left;">by {{ article.author }}</h6>
        <h6 style="float: right;">{{ article.createddate }}</h6>
        <br>
        <hr>
        {{ article.content|safe }}
    {% else %}
        <div class="alert alert-warning">No article!</div>
    {% endif %}
{% endblock body %} 
Ana dosyamızda her bir yazı için dinamik url tanımlayalım:


@app.route("/articles/<string:id>")
def article(id):
    cursor = mysql.connection.cursor()
    query = "SELECT * FROM articles WHERE id = %s"
    result = cursor.execute(query, (id,))

    if result > 0:
        article = cursor.fetchone()
        return render_template("article.html", article = article)
    else:
        return render_template("article.html")
/article/asd şeklinde bir adres girersek, article.html sayfası hata mesajı ile yüklenecek. Eğer /article/1 şeklinde bir url girersek ve id'si 1 olan bir yazı varsa bu yazıyı görüntüleyebileceğiz.


Sonraki Yazı: Updating, Deleting Articles
Yorumlar

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