Pythonベース-フラスコ
14541 ワード
学習内容
htmlは商品ですが、
フラスコはウェブページを印刷する工場です
今日勉強する内容
1.「create」を選択すると、入力テキストのボックスが表示されます.
2.テキストボックスの下にあるCreateボタンをクリックすると、リストに追加できます.
3.リストをクリックして記事を表示します.
タグを変更するときにページが多すぎると、新しいタグを適用するのは難しいです.
そこで、Webページのフラスコを動的に生成してみたいと思います.
1.フラスコ環境の設定
コンピュータの環境設定
glitch.comサービスの使用
glitch.com会員加入後-検索ウィンドウでフラスコをクリック-一番上の検索結果
glitchを使用したフラスコソースコード
from flask import Flask
app = Flask(__name__)
topics = [
{"id":1, "title":"html", "body":"html is ...."},
{"id":2, "title":"css", "body":"css is ...."},
{"id":3, "title":"js", "body":"js is ...."}
]
def template(content):
liTags = ''
for topic in topics:
liTags = liTags + f'<li><a href="/read/{topic["id"]}/">{topic["title"]}</a></li>'
return f'''
<html>
<body>
<h1><a href="/">WEB</a></h1>
<ol>
{liTags}
</ol>
{content}
<ul>
<li><a href="/create/">create</a></li>
</ul>
</body>
</html>
'''
@app.route("/")
def index():
return template('<h2>Welcome</h2>Hello, WEB!')
@app.route("/read/<int:id>/")
def read(id):
title = ''
body = ''
for topic in topics :
if topic['id'] == id:
title = topic['title']
body = topic['body']
break;
return template(f'<h2>{title}</h2>{body}')
@app.route('/create/')
def create():
content = '''
<form action="/create/">
<p><input type="text" name="title" placeholder="title"></p>
<p><textarea name="body" placeholder="body"></textarea></p>
<p><input type="submit" value="create"></p>
</form>
'''
return template(content)
@app.route('/update/')
def update():
return 'Update'
app.run()
学習後期
エラーと解決方法
glitchで、Webページにリストを作成中にエラーが発生しました.
@app.route('/read/1/')
def read():
return ''' # 문제점 1. return 들여쓰기 안 함
<html>
<body>
<h1><a href="/">WEB</a></h1>
<ol>
<li><a href="/read/1/">html</a></li>
<li><a href="/read/2/">css<a></li> #문제점2. a태그 닫지 않음
<li><a href="/read/3/">js</a></li>
</ol>
<h2>Read</h2>
Hello, Read!
</body>
</html>
'''
上のコードを見ると、returnの前にスペースがないのではなく、漏れ/でエラーが発生します.このコードのほか、vscodeで自動的に入力が完了するコードは直接入力されるため、漏れた字が多く、多くのエラーが発生します.エラーで落胆しないで、ログとコードを見て解決策を見つけることができます.
感想
午前中の授業はフラスコを使う環境設定がメインなので、すぐに授業にフォローし、午後の授業は理解しながらタイプしたいと思っていましたが、講師を見逃すと入力コードさえついていけませんでした.授業の内容は難しくないが、進度に追いつかないので、もう一度復習しなければならない.
そして、今日の授業でpythonで作ったWebフレームワークflaskを使いましたが、簡単そうに見えますが、難しいですが、とても面白くて、もっと勉強したいと思います.あらゆる分野でそうですが、ネット言語を作る方法もいろいろあり、本当に勉強することが多いと感じました.頑張ってね.
Reference
この問題について(Pythonベース-フラスコ), 我々は、より多くの情報をここで見つけました https://velog.io/@hanss1122/파이썬기초-flaskテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol