0Pricing
Python Academy · บทเรียน

เส้นทางและวิว

จัดการคำขอ HTTP

เส้นทางและวิว เป็นบทเรียน Python Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Python Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Python Academy มีบทเรียนทั้งหมด 4 บทเรียน

Flask คืออะไร

Flask เป็นกรอบงานเว็บน้ำหนักเบาสำหรับ Python ช่วยให้คุณสร้างแอปเว็บและ API ได้โดยไม่ต้องเขียนโค้ดประกอบจำนวนมาก ติดตั้งได้ด้วย pip install flask

from flask import Flask
app = Flask(__name__)
print('Flask app created:', app.name)

การสร้างแอป

แอป Flask ทุกแอปเริ่มต้นด้วยออบเจ็กต์ app = Flask(__name__) อาร์กิวเมนต์ __name__ ช่วยให้ Flask ค้นหาทรัพยากรต่าง ๆ เช่น แม่แบบได้

from flask import Flask
app = Flask(__name__)
if __name__ == '__main__':
    # app.run() starts the development server
    print('App is ready to run')

เส้นทางแรกของคุณ

เส้นทางจะจับคู่ URL กับฟังก์ชัน ซึ่งเรียกว่า มุมมอง ตัวตกแต่ง @app.route() จะผูกเส้นทางเข้ากับฟังก์ชัน และค่าที่ฟังก์ชันส่งคืนจะกลายเป็นเนื้อหาของการตอบกลับ

from flask import Flask
app = Flask(__name__)

@app.route('/')
def home():
    return 'Hello, world!'
print('Route / -> home')

หลายเส้นทาง

กำหนดเส้นทางได้มากเท่าที่ต้องการ แต่ละเส้นทางจะมีฟังก์ชันมุมมองของตัวเอง

from flask import Flask
app = Flask(__name__)

@app.route('/')
def home():
    return 'Home page'

@app.route('/about')
def about():
    return 'About page'
print('Two routes defined')

ส่วนประกอบ URL แบบไดนามิก

ดึงบางส่วนจาก URL ด้วย <variable> แล้ว Flask จะส่งค่านั้นเป็นอาร์กิวเมนต์ให้มุมมอง

from flask import Flask
app = Flask(__name__)

@app.route('/user/<username>')
def show_user(username):
    return 'Profile of ' + username
print('URL /user/alice -> show_user')

ตัวแปลงชนิดข้อมูล

เพิ่มตัวแปลง เช่น <int:post_id> เพื่อให้ Flask ตรวจสอบและแปลงค่าเป็นชนิดข้อมูลที่ถูกต้อง

from flask import Flask
app = Flask(__name__)

@app.route('/post/<int:post_id>')
def show_post(post_id):
    return 'Post number ' + str(post_id)
print('post_id arrives as an int')

วิธีการ HTTP

โดยค่าเริ่มต้น เส้นทางจะรองรับ GET หากต้องการรับคำกริยาอื่น ให้ส่ง methods=['GET', 'POST']

from flask import Flask
app = Flask(__name__)

@app.route('/submit', methods=['GET', 'POST'])
def submit():
    return 'Handled GET or POST'
print('submit accepts GET and POST')

การตรวจสอบวิธีการ

ภายในมุมมอง request.method จะบอกว่ามีการใช้คำกริยาใด ทำให้คุณเลือกทำงานตามเงื่อนไขได้

from flask import Flask, request
app = Flask(__name__)

@app.route('/submit', methods=['GET', 'POST'])
def submit():
    if request.method == 'POST':
        return 'Form submitted'
    return 'Show the form'
print('Branch on request.method')

การส่งคืนรหัสสถานะ

ส่งคืนทูเพิลรูปแบบ (body, status_code) เพื่อตั้งค่าสถานะ HTTP เช่น 404 เมื่อไม่พบข้อมูล

from flask import Flask
app = Flask(__name__)

@app.route('/missing')
def missing():
    return 'Not here', 404
print('Returns body with status 404')

การสร้าง URL

url_for('view_name') สร้าง URL จากชื่อมุมมอง ช่วยหลีกเลี่ยงการเขียนเส้นทางแบบตายตัวซึ่งอาจเปลี่ยนแปลงภายหลัง

from flask import Flask, url_for
app = Flask(__name__)

@app.route('/about')
def about():
    return 'About'
# url_for('about') -> '/about'
print('url_for builds URLs by view name')

การเรียกใช้เซิร์ฟเวอร์

เรียกใช้ app.run(debug=True) เพื่อเริ่มเซิร์ฟเวอร์สำหรับพัฒนา โหมดแก้ไขข้อผิดพลาดจะโหลดใหม่เมื่อมีการเปลี่ยนแปลง และแสดงหน้าข้อผิดพลาดที่ช่วยวิเคราะห์ปัญหา

from flask import Flask
app = Flask(__name__)

@app.route('/')
def home():
    return 'Hi'

if __name__ == '__main__':
    app.run(debug=True)

ตรวจสอบความเข้าใจ

ทดสอบความเข้าใจเรื่องการกำหนดเส้นทางของคุณ

สรุปทบทวน

คุณได้สร้างเส้นทางและมุมมองด้วย Flask

  • app = Flask(__name__) สร้างแอป
  • @app.route() จับคู่ URL กับฟังก์ชันมุมมอง
  • <int:id> ดึงและแปลงส่วนประกอบแบบไดนามิกของ URL
  • methods= และ request.method ใช้จัดการคำกริยา HTTP
  • url_for() สร้าง URL และ app.run() เริ่มเซิร์ฟเวอร์

คำถามที่พบบ่อย

บทเรียน “เส้นทางและวิว” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “เส้นทางและวิว” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Python Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Python Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “เส้นทางและวิว”

จัดการคำขอ HTTP คุณปฏิบัติ Python Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Python Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Python Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน

บทเรียน “เส้นทางและวิว” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Python Academy นี้ได้ไหม

ได้ บทเรียน Python Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. เส้นทางและวิว
  2. เทมเพลตด้วย Jinja2
  3. ฟอร์มและข้อมูลคำขอ
  4. การสร้างปลายทาง REST
← กลับไปที่ Python Academy