มาทำ Qr tracking ด้วย Python และ Flask กันเถอะ
สวัสดีครับผมอาร์มเองนะครับ เชื่อว่าหลาย ๆ คนคงเคยสร้าง QR Code โดยเพื่อนำไปสู่เนื้อหาเว็บไซต์ของตัวเองกันบ้าง โดยอาจจะเเปะไว้ตามเว็บไซต์อื่น ๆ หรือแม้เเต่ติดไว้ข้างเสาไฟแบบนี้ครับ 55
ผมได้ใส่เนื้อหาหลายส่วนเป็น Qr Code เมื่อผมทำไปได้สักพักหนึ่งผมก็ฉุกคิดมาได้ว่า เอ๊ะ กรรมการจะแสกน Qr Code ของเราหรือเปล่า จริงอยู่ที่มีบ้างเว็บไซต์สามารถสร้าง qr code พร้อม Tracking ได้เลย เเต่ก็มีการหมดอายุของ qr code ทำให้ไม่สามรถสแกนได้ ต้องสร้างใหม่บ่อย ๆ ซึ่งไม่ดีแน่ ๆ กับงานทำ Qr ร้านหมูกระทะของเราที่ต้องแปะไว้แบบตากเเดดตากลม เอาล่ะ ๆ เกริ่นมากพอละมาเริ่มกันเลยดีกว่า
เริ่มจากสร้างโปรเจค Flask ธรรมดา ๆ ขึ้นมาก่อน
โครงสร้างประมาณนี้นะครับ
src ___src\app.py ___src\requirements.txt
ทำเหมือนทำ API ใน Flask ทั่วไป ๆ ครับ
curl 127.0.0.1:5000/ ได้ #Hello World
ต่อมาให้ทำการสร้างโฟเดอร์และไฟล์ตามนี้ **ไม่ต้องสร้าง pycahe
สาเหตุที่ต้องทำเป็นโครงสร้างแบบนี้เพื่อความง่ายในการมาเเก้ไขและพัฒนาเพิ่มเติม โดยจะใช้ OPP เพื่อลดการเขียนโค้ดซ้ำ ๆ เพื่อทำงานแบบเดียวกัน controller สำหรับบรรจุโค้ดส่วน api ที่ routing database สำหรับบรรจุโค้ดส่วน mongodb connector service สำหรับบรรจุโค้ดส่วน function ทั้งหมด utils สำหรับบรรจุโค้ดส่วน ที่เป็นส่วนเสริมเช่น Time format .env สำหรับ config ข้อมูลที่ละเอียดอ่อน เช่น database user config.py สำหรับดึงค่าจาก .env ออกมมา Procfile เป็นไฟล์ที่จะบอกให้ Heroku รู้ว่าต้องรันแอพเราอย่างไร requirements.txt สร้างจากการใช้คำสั่ง pip freeze > requirements.txt (ต้องสร้าง venv ก่อน และติดตั้ง Library ที่จำเป็นก่อน) มาดูกันที่ไฟล์สำหรับทำ routing path กันก่อน