728x90
반응형
💡 Flask로 페이지 링크 및 파라미터 전송
1. 'templates’이름의 폴더 생성하여 밑에 view파일 생성
2. 함수에서 View를 리턴시키기 위해서는 render_template를 import 해야 함.
3. URL매핑 시 Parameter를 받기 위해서는 request를 import 해야 함.
4. HTML 페이지 리턴 return render_template('home.html')
5. Parameter추출 keyword = request.args.get('keyword')
6. HTML페이지 리턴 시 값을 같이 넘겨줌 return render_template('search.html', keyword=keyword)
7. HTML에서 {{keyword}} 를 이용하여 받은 값 출력
Code >
Python
from flask import Flask, render_template, request
app = Flask("HelloFlask")
@app.route("/")
def home():
return render_template('home.html')
@app.route("/search")
def search():
print(request.args)
print(request.args.get('keyword'))
keyword = request.args.get('keyword')
return render_template('search.html', keyword=keyword)
app.run("0.0.0.0")
HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>search</title>
</head>
<body>
<h1>Search~! {{keyword}}</h1>
{% for job in jobs %}
<tr>
<td>{{job.title}}</td>
<td>{{job.company}}</td>
<td>{{job.location}}</td>
<td><a href="{{job.link}}" target="_blank">Apply →</a></td>
</tr>
{% endfor %}
</body>
</html>
jobs라는 파라미터를 받아와 Flask문법의 for문으로 반복하여 출력
{% for job in jobs %}
<tr>
<td>{{job.title}}</td>
<td>{{job.company}}</td>
<td>{{job.location}}</td>
<td><a href="{{job.link}}" target="_blank">Apply →</a></td>
</tr>
{% endfor %}
728x90
반응형
'📱 웹(Web) > Flask' 카테고리의 다른 글
[Flask] ChatBot-API (0) | 2023.08.20 |
---|---|
[Flask] APScheduler (0) | 2023.08.20 |
[Flask] 기본 사용법 (0) | 2023.08.20 |
[Flask] Flask란? (0) | 2023.08.20 |