Quickstarters
CRUD Samples
How to Develop a CRUD Application with Flask?
31 นาที
ภาพรวม บทแนะนำนี้จะพาคุณไปสร้างแอปพลิเคชัน crud (สร้าง, อ่าน, อัปเดต, ลบ) โดยใช้ flask เราจะรวม back4app เป็นบริการแบ็กเอนด์ของเราเพื่อทำให้การจัดการข้อมูลง่ายขึ้น คุณจะได้เรียนรู้การตั้งค่าโปรเจกต์ back4app ออกแบบโครงสร้างข้อมูลที่ยืดหยุ่น และนำฟังก์ชัน crud ไปใช้โดยใช้ flask ในขั้นตอนนี้ คุณจะเริ่มสร้างโปรเจกต์ back4app ที่ชื่อว่า basic crud app flask ซึ่งให้โซลูชันการจัดเก็บข้อมูลที่ไม่สัมพันธ์กันที่แข็งแกร่ง คุณจะกำหนดสคีมาข้อมูลของคุณด้วยคลาสและฟิลด์โดยทำด้วยตนเองหรือใช้ ai agent ของ back4app หลังจากตั้งค่าแบ็กเอนด์ของคุณด้วยอินเทอร์เฟซผู้ดูแล back4app คุณจะเชื่อมต่อแอปพลิเคชัน flask ของคุณกับบริการผ่านการเรียก rest api บทแนะนำนี้ยังครอบคลุมการจัดการการเข้าถึงข้อมูลอย่างปลอดภัย เมื่อสิ้นสุด คุณจะมีแอปพลิเคชัน flask ที่พร้อมใช้งานในการผลิต ซึ่งสามารถทำการดำเนินการ crud พร้อมกับการตรวจสอบสิทธิ์ผู้ใช้ที่ปลอดภัยและการจัดการข้อมูล สิ่งที่คุณจะได้เรียนรู้ วิธีการสร้างแอป crud ที่ใช้ flask กับแบ็กเอนด์ที่ไม่สัมพันธ์ วิธีการจัดโครงสร้างแบ็กเอนด์ของคุณบน back4app และรวมเข้ากับโปรเจกต์ flask วิธีการใช้ back4app admin interface เพื่อจัดการการดำเนินการ crud ได้อย่างง่ายดาย วิธีการปรับใช้แอปพลิเคชัน flask ของคุณ รวมถึงการใช้ docker สำหรับการทำให้เป็นคอนเทนเนอร์ ข้อกำหนดเบื้องต้น ก่อนที่คุณจะเริ่ม ตรวจสอบให้แน่ใจว่าคุณมี บัญชี back4app ที่มีโปรเจกต์ที่กำหนดค่าแล้ว ต้องการความช่วยเหลือ? ดูที่ เริ่มต้นใช้งานกับ back4app https //www back4app com/docs/get started/new parse app สภาพแวดล้อมการพัฒนา python ที่ตั้งค่าไว้ ใช้โปรแกรมแก้ไขเช่น vscode หรือ pycharm และติดตั้ง python 3 8 (หรือใหม่กว่า) ความรู้พื้นฐานเกี่ยวกับ python, flask, และ rest apis ปรึกษา เอกสาร python https //docs python org/3/ หากจำเป็น ขั้นตอนที่ 1 – การตั้งค่าโครงการเบื้องต้น การสร้างโครงการ back4app ของคุณ เข้าสู่ระบบบัญชี back4app ของคุณ คลิกที่ “แอปใหม่” จากแดชบอร์ดของคุณ กรอกชื่อโครงการ basic crud app flask และทำตามขั้นตอนการตั้งค่า สร้างโครงการใหม่ หลังจากการสร้าง โครงการของคุณจะปรากฏบนแดชบอร์ด ซึ่งเป็นฐานสำหรับการกำหนดค่าด้านหลังของคุณ ขั้นตอนที่ 2 – การสร้างโครงสร้างข้อมูล การกำหนดโครงสร้างข้อมูลของคุณ สำหรับแอปพลิเคชันนี้ คุณจะต้องสร้างหลายคลาสในโปรเจกต์ back4app ของคุณ ด้านล่างนี้คือตัวอย่างของคลาสหลักและฟิลด์ที่จำเป็นสำหรับการดำเนินการ crud 1\ คลาสรายการ สนาม ประเภท คำอธิบาย id รหัสวัตถุ รหัสประจำตัวที่สร้างขึ้นโดยอัตโนมัติ ชื่อเรื่อง สตริง ชื่อหรือตำแหน่งของรายการ คำอธิบาย สตริง ภาพรวมสั้น ๆ ของรายการ สร้างเมื่อ วันที่ เวลาที่รายการถูกสร้างขึ้น อัปเดตเมื่อ วันที่ เวลาสำหรับการอัปเดตล่าสุด 2\ ประเภทผู้ใช้ สนาม ประเภท คำอธิบาย id รหัสวัตถุ รหัสประจำตัวที่สร้างขึ้นโดยอัตโนมัติ ชื่อผู้ใช้ สตริง ชื่อผู้ใช้ที่ไม่ซ้ำกันสำหรับผู้ใช้ อีเมล สตริง ที่อยู่อีเมลที่ไม่ซ้ำกัน รหัสผ่านแฮช สตริง รหัสผ่านที่ถูกแฮชอย่างปลอดภัยสำหรับการตรวจสอบสิทธิ์ สร้างเมื่อ วันที่ เวลาที่บัญชีผู้ใช้ถูกสร้างขึ้น อัปเดตเมื่อ วันที่ เวลาสำหรับการอัปเดตบัญชีล่าสุด คุณสามารถสร้างคลาสเหล่านี้และเพิ่มฟิลด์โดยตรงในแดชบอร์ด back4app ของคุณได้。 สร้างคลาสใหม่ คุณสามารถเพิ่มคอลัมน์ได้โดยการเลือกประเภทข้อมูล ตั้งชื่อฟิลด์ กำหนดค่าเริ่มต้น และทำเครื่องหมายว่าจำเป็นต้องใช้ สร้างคอลัมน์ การใช้ ai agent ของ back4app สำหรับการสร้าง schema ai agent ในแดชบอร์ดของคุณสามารถสร้าง schema โดยอัตโนมัติตามคำแนะนำของคุณ เครื่องมือนี้ช่วยให้กระบวนการง่ายขึ้นและทำให้แน่ใจว่าโมเดลข้อมูลของคุณเหมาะสมสำหรับงาน crud วิธีการใช้ ai agent เปิด ai agent ลงชื่อเข้าใช้แดชบอร์ด back4app ของคุณและค้นหา ai agent ภายใต้การตั้งค่าโปรเจกต์ อธิบาย schema ของคุณ ให้คำแนะนำที่ละเอียดซึ่งระบุคลาสและฟิลด์ ยืนยันการตั้งค่า ตรวจสอบ schema ที่เสนอและอนุมัติการเปลี่ยนแปลง ตัวอย่างคำแนะนำ create the following classes in my back4app project 1\) class items \ fields \ id objectid (auto generated) \ title string \ description string \ createdat date (auto generated) \ updatedat date (auto updated) 2\) class users \ fields \ id objectid (auto generated) \ username string (unique) \ email string (unique) \ passwordhash string \ createdat date (auto generated) \ updatedat date (auto updated) กระบวนการที่ขับเคลื่อนด้วย ai นี้ช่วยประหยัดเวลาและรับประกันโมเดลข้อมูลที่สอดคล้องและมีประสิทธิภาพ ขั้นตอนที่ 3 – เปิดใช้งานอินเทอร์เฟซผู้ดูแลระบบและจัดการการดำเนินการ crud ภาพรวมของอินเทอร์เฟซผู้ดูแลระบบ อินเทอร์เฟซผู้ดูแลระบบของ back4app ให้โซลูชันที่ไม่ต้องเขียนโค้ดเพื่อจัดการข้อมูลแบ็กเอนด์ของคุณ ด้วยฟีเจอร์การลากและวาง คุณสามารถทำการดำเนินการ crud ได้อย่างง่ายดาย เช่น การเพิ่ม แก้ไข หรือ ลบระเบียน การเปิดใช้งานอินเทอร์เฟซผู้ดูแลระบบ ไปที่เมนู “เพิ่มเติม” บนแดชบอร์ด back4app ของคุณ เลือก “แอปผู้ดูแลระบบ” และคลิก “เปิดใช้งานแอปผู้ดูแลระบบ ” สร้างบัญชีผู้ดูแลระบบของคุณ, ซึ่งยังตั้งค่าบทบาทเริ่มต้นเช่น b4aadminuser เปิดใช้งานแอปผู้ดูแลระบบ หลังจากเปิดใช้งานแล้ว ให้ลงชื่อเข้าใช้ในอินเทอร์เฟซผู้ดูแลระบบเพื่อจัดการข้อมูลโครงการของคุณ แดชบอร์ดแอปผู้ดูแลระบบ การใช้อินเทอร์เฟซผู้ดูแลระบบสำหรับ crud ในส่วนของผู้ดูแลระบบ คุณสามารถ เพิ่มรายการใหม่ คลิก “เพิ่มบันทึก” ภายในคลาส (เช่น รายการ) เพื่อสร้างข้อมูลใหม่ ดูและแก้ไขรายการ เลือกรายการใด ๆ เพื่อดูรายละเอียดหรืออัปเดตฟิลด์ ลบบันทึก ลบรายการที่ไม่จำเป็นอีกต่อไป ส่วนติดต่อที่ใช้งานง่ายนี้ช่วยเพิ่มประสิทธิภาพการทำงานโดยการปรับปรุงการจัดการด้านหลัง ขั้นตอนที่ 4 – เชื่อมต่อแอปพลิเคชัน flask ของคุณกับ back4app เมื่อคุณตั้งค่าด้านหลังเสร็จแล้ว ขั้นตอนถัดไปคือการเชื่อมต่อแอปพลิเคชัน flask ของคุณกับ back4app การเรียก api จาก flask เนื่องจากไม่มี parse sdk ที่เฉพาะสำหรับ flask คุณจะใช้การเรียก rest api ในแอป flask ของคุณ คุณสามารถใช้ requests ไลบรารีเพื่อดำเนินการ crud ตัวอย่าง การตั้งค่าการสื่อสาร api ติดตั้งไลบรารี requests รันคำสั่งต่อไปนี้ในเทอร์มินัลของคุณ pip install requests กำหนดโมดูล python สำหรับการเรียก api สร้างไฟล์ชื่อ back4app api py # back4app api py import requests application id = "your application id" rest api key = "your rest api key" base url = "https //parseapi back4app com/classes" headers = { "x parse application id" application id, "x parse rest api key" rest api key, "content type" "application/json" } def get items() response = requests get(f"{base url}/items", headers=headers) return response json() def create item(title, description) data = {"title" title, "description" description} response = requests post(f"{base url}/items", headers=headers, json=data) return response json() def update item(object id, title, description) data = {"title" title, "description" description} response = requests put(f"{base url}/items/{object id}", headers=headers, json=data) return response json() def delete item(object id) response = requests delete(f"{base url}/items/{object id}", headers=headers) return response json() รวมฟังก์ชัน api ในเส้นทาง flask ของคุณ ตัวอย่างเช่น ใน app py # app py from flask import flask, request, jsonify, render template from back4app api import get items, create item, update item, delete item app = flask( name ) @app route("/") def index() items = get items() return render template("index html", items=items get("results", \[])) @app route("/add", methods=\["post"]) def add item() title = request form get("title") description = request form get("description") result = create item(title, description) return jsonify(result) @app route("/update/\<item id>", methods=\["put"]) def modify item(item id) data = request get json() result = update item(item id, data get("title"), data get("description")) return jsonify(result) @app route("/delete/\<item id>", methods=\["delete"]) def remove item(item id) result = delete item(item id) return jsonify(result) if name == " main " app run(debug=true) ตัวอย่างนี้แสดงให้เห็นถึงวิธีการใช้การเรียก rest ภายใน flask เพื่อโต้ตอบกับแบ็กเอนด์ back4app ของคุณ ขั้นตอนที่ 5 – การปกป้องแบ็กเอนด์ของคุณ การดำเนินการควบคุมการเข้าถึง ปกป้องข้อมูลของคุณโดยการกำหนดค่าควบคุมการเข้าถึง ตัวอย่างเช่น เมื่อสร้างรายการใหม่ คุณอาจจำกัดการเข้าถึงเฉพาะผู้สร้างรายการนั้น ด้านล่างนี้คือตัวอย่างการใช้ api calls พร้อมการควบคุมการเข้าถึง import requests def create private item(title, description, user token) data = {"title" title, "description" description} headers = { "x parse application id" "your application id", "x parse rest api key" "your rest api key", "x parse session token" user token, "content type" "application/json" } response = requests post("https //parseapi back4app com/classes/items", headers=headers, json=data) return response json() การกำหนดสิทธิ์ระดับคลาส ปรับสิทธิ์ระดับคลาส (clps) โดยตรงในแดชบอร์ด back4app เพื่อให้แน่ใจว่าผู้ใช้ที่ผ่านการตรวจสอบแล้วเท่านั้นที่สามารถเข้าถึงคลาสเฉพาะได้ ขั้นตอนที่ 6 – การดำเนินการตรวจสอบผู้ใช้ การตั้งค่าการจัดการผู้ใช้ back4app มีการจัดการผู้ใช้ในตัวผ่านคลาส users ในแอป flask ของคุณ คุณสามารถสร้าง endpoint สำหรับการลงทะเบียนและการเข้าสู่ระบบ ตัวอย่าง การลงทะเบียนผู้ใช้และการเข้าสู่ระบบ \# auth py import requests application id = "your application id" rest api key = "your rest api key" headers = { "x parse application id" application id, "x parse rest api key" rest api key, "content type" "application/json" } def register user(username, password, email) data = {"username" username, "password" password, "email" email} response = requests post("https //parseapi back4app com/users", headers=headers, json=data) return response json() def login user(username, password) params = {"username" username, "password" password} response = requests get("https //parseapi back4app com/login", headers=headers, params=params) return response json() คุณสามารถสร้างเส้นทาง flask ที่สอดคล้องกันเพื่อจัดการการลงทะเบียนผู้ใช้และการเข้าสู่ระบบโดยใช้ฟังก์ชันเหล่านี้ ขั้นตอนที่ 7 – การปรับใช้แอปพลิเคชัน flask ของคุณ back4app ทำให้การปรับใช้ง่ายขึ้น คุณสามารถปรับใช้แอป flask ของคุณผ่านหลายวิธี รวมถึง docker 7 1 การบรรจุแอปพลิเคชัน flask ของคุณ เตรียมแอปพลิเคชันของคุณ ตรวจสอบให้แน่ใจว่าไฟล์และความต้องการทั้งหมดที่จำเป็นรวมอยู่ด้วย ทดสอบในเครื่อง เรียกใช้แอปของคุณในเครื่องด้วย flask run 7 2 การจัดระเบียบโครงสร้างโปรเจกต์ของคุณ โครงสร้างทั่วไปอาจเป็น basic crud app flask/ \| app py \| back4app api py \| auth py \| templates/ \| | index html \| static/ \| requirements txt \| dockerfile 7 3 การทำให้เป็นคอนเทนเนอร์ด้วย docker รวมถึง dockerfile ที่รากของโปรเจกต์ \# use a lightweight python image from python 3 9 slim \# set the working directory workdir /app \# install dependencies copy requirements txt run pip install no cache dir r requirements txt \# copy the application code copy \# expose the port flask runs on expose 5000 \# start the flask app cmd \["python", "app py"] 7 4 การปรับใช้ผ่าน back4app web deployment เชื่อมต่อกับ github repository ของคุณ ตรวจสอบให้แน่ใจว่าโค้ดของคุณถูกส่งไปยัง github กำหนดค่าการตั้งค่าการปรับใช้ ในแดชบอร์ด back4app ใช้ web deployment ฟีเจอร์เพื่อลิงก์ repository ของคุณ (เช่น, basic crud app flask ) และเลือกสาขาของคุณ กำหนดคำสั่งการสร้าง ระบุคำสั่งการสร้าง (เช่น, pip install r requirements txt ) และตำแหน่งของแอปพลิเคชันของคุณ ปรับใช้ คลิก deploy และติดตามบันทึกจนกว่าแอปพลิเคชันของคุณจะออนไลน์ ขั้นตอนที่ 8 – สรุปและทิศทางในอนาคต ทำได้ดีมาก! คุณได้สร้างแอปพลิเคชัน crud ที่ใช้ flask ซึ่งรวมเข้ากับ back4app อย่างสำเร็จ คุณได้สร้างโครงการชื่อ basic crud app flask , กำหนดโมเดลข้อมูลสำหรับรายการและผู้ใช้ และจัดการแบ็กเอนด์ของคุณผ่านทางอินเทอร์เฟซผู้ดูแล back4app นอกจากนี้ คุณได้เชื่อมต่อแอปพลิเคชัน flask ของคุณโดยใช้การเรียก rest api และดำเนินการมาตรการด้านความปลอดภัย ต่อไปจะทำอย่างไร? ขยายฟังก์ชันการทำงาน พิจารณาเพิ่มฟีเจอร์เช่น การค้นหาขั้นสูง, การดูรายละเอียดรายการ, หรือการอัปเดตแบบเรียลไทม์ ปรับปรุงบริการแบ็กเอนด์ สำรวจฟังก์ชันคลาวด์, รวม api ของบุคคลที่สาม, หรือดำเนินการควบคุมการเข้าถึงตามบทบาท พัฒนาทักษะของคุณ เยี่ยมชม เอกสาร back4app https //www back4app com/docs และแหล่งข้อมูลอื่น ๆ เพื่อปรับปรุงแอปพลิเคชันของคุณต่อไป ขอให้สนุกกับการเขียนโค้ดและโชคดีในแอปพลิเคชัน flask crud ของคุณ!