[6日間]

6097 ワード

バックエンド領域
ユーザーが要求するたびに、Webページが動的に印刷される工場です.
新しい端末にpip 3 installフラスコを入力:フラスコを取り付ける
from flask import Flask

app = Flask(__name__)

@app.route("/")
def hello_world():
    return "<p>Hello, World!</p>"

app.run()

端末上でhttp://127.0.0.1:5000(Press CTRL+C to quit)を実行
-->Hello, World! 表示されたWebサーバを完了します.
*Visual Studioコードで選択したコンテンツを比較することで、コードを比較できます.
Glitch
無料サーバレンタルサイト
5分で閉まる
Remix your own -> server.pyコードのチェック
start.shからpython 3に変更する必要があります!
logs->問題の原因を検索する場合

routing


連絡先接続をクリアして、ユーザーが入ったときに入力値(アドレス)を処理します.
@app.route("/") #사용자가 경로 입력 없이 들어왔을 때
def index():    #함수 이름은 상관x
    return '<strong>random</strong> :'+str(random.random())  #출력값
@app.route("/create/")
def create():
    return 'Create'        
#사용자가 주소창에 /create/ 입력시, 서버에서 지정한 함수 실행 
-> 함수의 return값이 웹브라우저로 응답 -> Create에 출력 
既存のWebページでliラベルを繰り返す
これらの重複値をデータ化しましょう.
htmlのデータ化-->dictionary、リストを組み合わせて使用!
ダイナミックにliタグを作成するには、まずトピックと呼ばれるデータを作成します.
topics = [
  {"id":1, "title":"html", "body":"html is ...."},
  {"id":2, "title":"css", "body":"css is ...."}
]
テーマの要素を1つずつ見つけるには?
さらにliTagsという変数を作成し、初期化します.
LiTagsの作成時にトピックをfor文に変換
以前のliTagsを追加し、新しいliタグ値を追加して出力します.
liTags = '' 
  for topic in topics:
    liTags = liTags + f'<li>{topic["title"]}</li>
二重引用符x
liTags+をしないと?最後の行のみ出力(明るすぎるため)
リンクを追加するときにliラベル間に次のコードを入力します.
<a href="/read/{topic["id"]}/">{topic["title"]}</a>
入力したすべてのliタグの場所に{liTags}を入力します.
結果は以下の通りです.
@app.route("/")
def index():
  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>
      <h2>Welcome</h2>
      Hello, World!
    </body>
  </html>
  '''
難点/解決策/感じ
今日の授業の内容はめちゃくちゃです...でも、复习できる映像があって本当によかったです.午前中の授业の映像から见直して勉强して、确かに理解度が向上しました.夜まで勉強しなければなりません.自分でコードを書くことができなくても、必ず理解してください!!そして今日は勉強を終えます.