Flask MVC (Unit-5) HTML Render
Bir önceki yazımızda Alembic Configuration ayarlarının yapılması‘nı anlatmıştık. Bu yazımızda Klasör yapımızda template isminde bir klasör var, buna değineceğiz. Template klasörü render_template aracı tarafından tanınmaktadır. View edeceğimiz .html dosyaları burada bulunmalıdır.
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Authors</title> </head> <body> Author List<br> <table border="1"> <thead> <tr> <th>Adı</th> <th>Soyadı</th> <th>Düzenle</th> <th>Sil</th> </tr> </thead> <tbody> {% for item in b %} <tr> <td>{{ item.Name }}</td> <td>{{ item.SurName }}</td> <td> <a href="{{ url_for('author.edit', author_id = item.Id) }}" hint="Edit">X</a></td> <td> <a href="{{ url_for('author.delete', author_id = item.Id) }}" hint="Delete">X</a></td> </tr> {% endfor %} </tbody> </table> </body> </html>
Yukarda templates/manage/authors.html dosyasını görüyorsunuz satırları inceleyecek olursak {%…%}ve {{…}} kodları dikkatiniz çekecektir. Bu kod parçaları flask içinde bulunan ve jinja2’den inherit edilen render_template aracının tanıdığı kod parçalarıdır. {% for item in b %} ile .py dosyasından gelen b nesnesini iterate edebiliyoruz. {{ item.Name }} ilede iterarte ettiğimiz nesne içindeki her bir field’a erişerek içeriğindeki value’yu html olarak render etmiş oluyoruz. Diğer reserved keywordları incelemek isterseniz buradan faydalanabilirsiniz.
Geri bildirim: Flask MVC (Unit-6) MVC Controller Layer - Bilişim Profesyonelleri