演習課題「Markdownに対応しよう」
ここでは、マンガや動画などの感想を書き込むレビューログを作っています。
右の環境には、MySQLで「mylog」というデータベースと、Flaskを使用したWebアプリケーションの雛形が用意してあります。
このうちのreview.pyとshow.htmlを修正して、レビュー詳細画面をMarkdown対応にしてください。環境には、あらかじめFlask-Markdownが組み込んであります。
採点して、すべてのジャッジに正解すれば、演習課題クリアです!
※ 採点時は、サーバーを起動し、問題文に関するページにアクセスできる状態にしてください。
#05:markdownで表示しよう
ここでは、メモの内容をMarkdownで記述できるようにします。そのために、「flask-markdown」というMarkdown変換ライブラリを使ってみましょう。Markdownは、見出しや箇条書きなど、文章の見た目をテキストで表現できる簡易記法で、ソフトウェアエンジニアの間で、広く使われています。
Python環境にFlask-Markdownをインストールする$ sudo pip3 install Flask-Markdown
mymemo/memo_app.pyfrom flask import Flask, request, render_template
from flask_sqlalchemy import SQLAlchemy
from flaskext.markdown import Markdown
app = Flask(__name__)
Markdown(app)
mymemo/templates/show.html{% extends 'layout.html' %}
{% block content %}
<h1>{{ message }}</h1>
<p>タイトル:{{post.title}}</p>
{{ post.content | markdown }}
<p><a href='/'>一覧に戻る</a> | 編集 | 削除</p>
{% endblock %}
- Welcome to Flask Markdown’s documentation!
https://pythonhosted.org/Flask-Markdown/
- dcolish/flask-markdown
https://github.com/dcolish/flask-markdown
- FlaskとPostgreSQLでウェブアプリを作ってHerokuで無料で運用する - Qiita
https://qiita.com/croquette0212/items/9b4dc5377e7d6f292671#markdown%E5%AF%BE%E5%BF%9C
- jinja2入門 その3 フィルタ - Python学習講座
http://www.python.ambitious-engineer.com/archives/785