วิธีพัฒนาแอปจองด้วย Vue? คู่มือทีละขั้นตอน
การจัดการการจองเป็นส่วนสำคัญของธุรกิจในอุตสาหกรรมบริการ โดยเฉพาะในธุรกิจที่ต้องมีการกำหนดเวลาและความสามารถในการรองรับลูกค้า เช่น ร้านอาหาร
ด้วย Back4app, Twilio API และ Vue คุณสามารถสร้างแอปจองร้านอาหารง่าย ๆ ที่มีคุณสมบัติต่าง ๆ เช่น การจอง การรับข้อความยืนยัน และการดูช่องเวลาที่มีการจองไว้
ในบทความนี้ คุณจะได้สร้างและปรับใช้แอปจองด้วย Vue สำหรับส่วนหน้าจอ, Back4app สำหรับจัดการส่วนหลังและการปรับใช้ และ Twilio สำหรับการสื่อสารกับผู้ใช้ผ่าน WhatsApp
Contents
ภาพรวมของโปรเจกต์
ในคู่มือนี้ คุณจะสร้างแอปจองง่าย ๆ ด้วย Vue โดยแอปจองนี้จะมีมุมมอง ReservationForm และ ReservationList
ผู้เข้าชมจะมีปฏิสัมพันธ์กับมุมมอง ReservationForm เพื่อกรอกข้อมูลการจอง เช่น ชื่อ, อีเมล, วันที่, เวลา และ หมายเลขโทรศัพท์ นอกจากนี้ พวกเขายังสามารถดูการจองทั้งหมดที่ทำในมุมมอง ReservationList
คุณจะใช้สิ่งต่อไปนี้:
- Back4app Backend: คุณจะสร้าง Back4app backend เพื่อเก็บและจัดการข้อมูลการจองจากแอป Vue ของคุณในฐานข้อมูล
- Twilio API: คุณจะผสานรวม Twilio API เข้ากับแอป Vue ของคุณเพื่อส่งข้อความยืนยันผ่าน WhatsApp ไปยังผู้ที่ทำการจอง
- Back4pp’s AI Agent: คุณจะสร้างคลาวด์ฟังก์ชันสี่ฟังก์ชันด้วย Back4app AI Agent ซึ่งคุณจะผสานรวมเข้ากับแอป Vue ของคุณเพื่อจัดการกับ:
- การจัดเก็บรายละเอียดการจองลงในฐานข้อมูลของ Back4app
- การตรวจสอบความพร้อมใช้งานของวันที่และเวลาที่จะจอง
- การส่งข้อความยืนยันผ่าน WhatsApp โดยใช้ Twilio API เพื่อแจ้งผู้ใช้ว่าการจองเสร็จสมบูรณ์
- การดูการจองที่ผู้เข้าชมได้ทำไว้แล้วในฐานข้อมูลของคุณ
- Back4app Containers: คุณจะปรับใช้แอป Vue ของคุณใน Back4app container เพื่อให้สามารถเข้าถึงได้ทางออนไลน์
การสร้างแอป Vue ของคุณ
ส่วนนี้จะนำคุณผ่านการตั้งค่าสภาพแวดล้อมการพัฒนาและการสร้างโครงสร้างเริ่มต้นของแอปจองของคุณ
การตั้งค่าสภาพแวดล้อมการพัฒนาของคุณ
ในการสร้างแอป Vue ให้รันคำสั่งต่อไปนี้ในเทอร์มินัลของคุณ:
npm create vue
คำสั่งข้างต้นจะให้คุณตั้งชื่อแอปและเปิดใช้งานคุณสมบัติบางอย่างสำหรับแอปของคุณ เช่น การเพิ่ม TypeScript, การรองรับ JSX ฯลฯ เลือก no สำหรับตัวเลือกทั้งหมด ยกเว้น “Vue Router” ซึ่งคุณจะต้องใช้สำหรับการนำทางระหว่างมุมมอง
จากนั้น ใช้คำสั่ง cd
เพื่อเข้าสู่ไดเรกทอรีที่สร้างขึ้นและรันคำสั่งด้านล่างเพื่อติดตั้ง dependencies ที่จำเป็น:
npm install
ต่อไป ให้ติดตั้ง Parse SDK โดยรันคำสั่งด้านล่าง:
npm install parse
Parse SDK ช่วยให้คุณสื่อสารระหว่างแอป Vue ของคุณกับ Back4app backend ได้
หลังจากตั้งค่าสภาพแวดล้อมการพัฒนาแล้ว ให้ดำเนินการสร้างมุมมองสำหรับแอปจองของคุณ
การสร้างมุมมองในแอปของคุณ
สร้างมุมมอง ReservationForm
และ ReservationList
ในไดเรกทอรี views
ของแอปของคุณ
จากนั้น เปิดใช้งานการนำทางระหว่างมุมมองทั้งสองนี้โดยการเพิ่มโค้ดด้านล่างในไฟล์ index.js
ในไดเรกทอรี router
:
// index.js import { createRouter, createWebHistory } from "vue-router"; import ReservationForm from "@/views/ReservationForm.vue"; const router = createRouter({ history: createWebHistory(import.meta.env.BASE_URL), routes: [ { path: "/", name: "Home", component: ReservationForm, }, { path: "/reservations", name: "Reservations", component: () => import("@/views/ReservationList.vue"), }, ], }); export default router;
โค้ดข้างต้นจะตั้งค่าการนำทางภายในแอป Vue ของคุณ โดยกำหนดเส้นทาง /
และ /reservations
เมื่อผู้เข้าชมเข้าถึง URL ของแอป โค้ดจะนำพวกเขาไปยังมุมมอง ReservationForm
ในฐานะ Home
route
เส้นทาง /reservations
จะนำผู้ใช้ไปยังมุมมอง ReservationList
ซึ่งถูกโหลดแบบ lazy load หมายความว่าแอปของคุณจะโหลดเส้นทางนี้เฉพาะเมื่อจำเป็น ซึ่งช่วยปรับปรุงประสิทธิภาพของแอป
ต่อไป เพื่อให้ผู้ใช้สามารถนำทางระหว่างสองเส้นทางได้ ให้กำหนดค่าไฟล์ App.vue
เพื่อแสดงแถบนำทางที่มีลิงก์ของเส้นทาง:
//App.vue <script setup> import { RouterLink, RouterView } from 'vue-router' </script> <template> <header> <div class="wrapper" id="app"> <nav> <RouterLink to="/">Home</RouterLink> <RouterLink to="/reservations">View Reservations</RouterLink> </nav> </div> </header> <RouterView /> </template>
โค้ดข้างต้นแสดงไฟล์ App.vue
ซึ่งทำหน้าที่เป็นเลย์เอาท์หลักของแอป โดยโค้ดนี้จะนำเข้า RouterLink
และ RouterView
จากไลบรารี Vue Router เพื่อเป็นตัวแทนของแต่ละเส้นทางผ่านคอมโพเนนต์ RouterLink
คอมโพเนนต์ RouterLink
รับ prop to
เพื่อระบุเส้นทางที่ลิงก์จะชี้ไป ส่วนคอมโพเนนต์ RouterView
ทำหน้าที่เป็นตัวแทนของเนื้อหาของเส้นทางปัจจุบันที่จะแสดงผลแบบไดนามิก
ในไฟล์ ReservationForm.vue
ให้เพิ่มโค้ดด้านล่างเพื่อสร้างฟอร์มสำหรับให้ผู้ใช้กรอกข้อมูลการจอง:
// ReservationForm.vue <template> <div> <form> <input v-model="reservation.name" placeholder="Name" required /> <input v-model="reservation.email" type="email" placeholder="Email" required /> <input v-model="reservation.date" type="date" placeholder="Date" required /> <input v-model="reservation.time" type="time" placeholder="Time" required /> <input v-model="reservation.phoneNumber" type="tel" placeholder="Phone Number" required /> <button type="submit">Create Reservation</button> </form> </div> </template> <script setup> import { ref } from "vue"; const reservation = ref({ name: "", email: "", date: "", time: "", phoneNumber: "", }); </script>
โค้ดข้างต้นสร้างฟอร์มที่มีฟิลด์ที่จำเป็นสำหรับการกรอกข้อมูล เช่น name
, email
, date
, time
และ phoneNumber
จากนั้นโค้ดจะสร้างออบเจ็กต์ reservation
แบบ reactive เพื่อเก็บข้อมูลผู้ใช้โดยใช้ฟังก์ชัน ref
จากไลบรารี vue
ต่อไป ให้เพิ่มโค้ดด้านล่างในไฟล์ ReservationList.vue
เพื่อแสดงรายการการจองที่ผู้ใช้ได้ทำ:
// ReservationList.vue <template> <div> <ul v-if="reservations.length" class="wrapper"> <li v-for="reservation in reservations" :key="reservation.objectId" class="card" > <p>Name: {{ reservation.name }}</p> <p>Date: {{ new Date(reservation.date).toLocaleDateString() }}</p> <p>Time: {{ reservation.time }}</p> <p>Phone: {{ reservation.phoneNumber }}</p> </li> </ul> <p v-else>No reservations found.</p> </div> </template> <script setup> import { ref } from "vue"; const reservations = ref([]); </script>
โค้ดข้างต้นใช้ directive ของ Vue คือ v-if
ในการแสดงการจองที่มีอยู่ (ถ้ามี) โดยถ้ามีการจอง โค้ดจะวนลูปผ่านแต่ละการจองในอาร์เรย์ reservations
ด้วย directive v-for
และแสดงรายละเอียดการจองนั้น
การปรับสไตล์มุมมองในแอปของคุณ
เพิ่มบล็อกสไตล์ที่มีขอบเขต (scoped style block) ต่อไปนี้ในมุมมอง ReservationList
เพื่อควบคุมรูปลักษณ์ของรายการและองค์ประกอบอื่น ๆ:
// ReservationList.vue <style scoped> h1{ margin-block-end: 2rem; } .card{ background-color: #D99858; display: flex; flex-direction: column; gap: 1rem; border-radius: 12px; padding: 2rem; align-items: center; } li{ color: #FFFFFF; } .wrapper{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; } div{ padding-inline-start: 1rem; } </style>
เพิ่มบล็อกสไตล์ที่มีขอบเขตต่อไปนี้ในมุมมอง ReservationForm
เพื่อควบคุมรูปลักษณ์ของฟอร์ม:
// ReservationForm.vue <style scoped> form{ display: flex; flex-direction: column; gap: 1rem; align-items: center; } </style>
สุดท้าย กำหนดสไตล์แบบ global สำหรับแอป Vue ของคุณโดยเพิ่มสไตล์ CSS ต่อไปนี้ในไฟล์ main.css
ที่อยู่ในไดเรกทอรี assets
:
/* main.css */ @import url('<https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap>'); *{ margin: 0; padding: 0; box-sizing: border-box; } body{ font-family: "Montserrat", sans-serif; background-color: #333333; color: #FFFFFF; } nav { padding: 10px; display: flex; justify-content: space-between; } nav a{ color: inherit; text-decoration: none; font-weight: 500; color: #888888; margin-block-end: 3rem; } nav a:hover{ color: #D99858; } header{ padding: 1rem; } button { background-color: #FFFFFF; color: #D99858; border: none; padding: 0.7rem 0.9rem; font-size: 14px; border-radius: 7px; font-weight: 500; } button:hover { background-color: #D99858; color: #FFFFFF; } input{ inline-size: 100%; border: none; border-radius: 5px; outline: none; padding: 1rem; font-family: "Montserrat", sans-serif; } .container{ inline-size: 60%; margin: auto; }
หลังจากสร้างโครงสร้างเริ่มต้นของแอปจองของคุณแล้ว ให้สร้าง Back4app Backend เพื่อเก็บรายละเอียดการจองในฐานข้อมูล
การสร้าง Back4app Backend
การสร้าง Backend บน Back4app จำเป็นต้องมีบัญชี Back4app หากคุณยังไม่มี คุณสามารถ สมัครใช้งานได้ฟรี
เข้าสู่ระบบบัญชีของคุณแล้วคลิกปุ่ม “NEW APP” ที่มุมบนขวา ซึ่งจะพาคุณไปยังหน้าที่คุณต้องเลือก “Backend as a Service”
เมื่อคลิก “Backend as a Service” คุณจะต้องตั้งชื่ออินสแตนซ์แอปของคุณและเลือกประเภทฐานข้อมูลสำหรับแอปของคุณ ให้เลือกฐานข้อมูล PostgreSQL และคลิกปุ่ม “Create”
หลังจาก Back4app ตั้งค่าแอปของคุณแล้ว คุณจะถูกนำไปยังอินสแตนซ์แอปของคุณ ดังที่แสดงด้านล่าง
ดึง “Application ID” และ “JavaScript Key” ของคุณจากส่วน “Security & Keys” ซึ่งสามารถเข้าถึงได้โดยคลิก “App Settings” ในแถบด้านข้าง
จากนั้น สร้างไฟล์ .env
และเพิ่ม “Application ID” และ “Javascript Key” ของคุณลงไปเพื่อโหลดเป็น environmental variables ในแอปของคุณ:
VITE_BACK4APP_APPLICATION_ID = <YOUR_APP_ID> VITE_BACK4APP_JAVASCRIPT_KEY = <YOUR_JAVASCRIPT_KEY>
จากนั้นแก้ไขไฟล์ main.js
เพื่อเริ่มต้น Parse ในแอป Vue ของคุณ ดังนี้:
// main.js import "./assets/main.css"; import { createApp } from "vue"; import App from "./App.vue"; import router from "./router"; import Parse from "parse/dist/parse.min.js"; Parse.initialize( `${import.meta.env.VITE_BACK4APP_APPLICATION_ID}`, `${import.meta.env.VITE_BACK4APP_JAVASCRIPT_KEY}`, ); Parse.serverURL = "<https://parseapi.back4app.com/>"; const app = createApp(App); app.use(router); app.mount("#app");
โค้ดด้านบนจะนำเข้าและเริ่มต้น Parse SDK ในแอป Vue ของคุณ ช่วยให้แอปของคุณสื่อสารกับ Back4app backend ได้
ต่อไป คุณจะต้องเก็บรายละเอียดการจองในฐานข้อมูลของ Back4app เพื่อเก็บข้อมูลการจองของผู้เข้าชม คุณจะสร้างคลาสในฐานข้อมูลโดยใช้ Back4app AI Agent
คลาสนี้จะเก็บรายละเอียดการจอง เช่น name
, email
, date
เป็นต้น
การสร้าง Reservation Class และ Cloud Functions ด้วย AI Agent
ค้นหาแท็บ “AI Agent” ที่ด้านบนซ้ายของหน้าจอของคุณและป้อนข้อความด้านล่างเพื่อสร้างคลาสในฐานข้อมูล:
Create database tables in my Back4app app with the following information. 1. Reservation Class: Class Name: Reservation Fields: objectId (String, Automatically generated by Back4App). name (String, Required) email (String, Required) date (Date, Required) time (String, Required) phoneNumber (String, Required) Populate the database tables with test data. My Parse App ID: <Your Parse App ID>
คุณจะได้รับการตอบกลับในลักษณะที่คล้ายกับด้านล่าง:
หลังจากสร้างคลาส Reservation
ที่มีฟิลด์สำหรับเก็บรายละเอียดการจองแล้ว คุณจะสร้างคลาวด์ฟังก์ชันสี่ฟังก์ชันด้วย AI Agent เพื่อให้มีการโต้ตอบกับฐานข้อมูลที่สร้างขึ้น
ป้อนคำสั่งต่อไปนี้ให้กับ AI Agent เพื่อสร้างคลาวด์ฟังก์ชันสำหรับจัดเก็บข้อมูลในคลาส Reservation
:
Create a Cloud Code function "createReservation" that takes in necessary arguments to create a new reservation in the Reservation class.
คุณจะได้รับการตอบกลับในลักษณะที่คล้ายกับด้านล่าง:
หลังจากสร้างฟังก์ชัน createReservation
แล้ว ให้ป้อนคำสั่งต่อไปนี้ให้กับ AI Agent เพื่อทำการตรวจสอบความพร้อมของวันที่และเวลาที่ผู้เข้าชมต้องการจอง:
Create a Cloud Code function "checkAvailability" to check the availability of a reserved time and date. Create this second Cloud Code function in the same file.
คุณจะได้รับการตอบกลับในลักษณะที่คล้ายกับด้านล่าง:
การส่งข้อความ WhatsApp ด้วย Twilio’s WhatsApp API ต้องมีการสร้างและตั้งค่าบัญชี Twilio Twilio มี API ที่ให้ผู้ใช้สามารถส่งข้อความ WhatsApp จากแอปของคุณ
รับข้อมูล Twilio Account SID, Twilio authentication token และหมายเลข WhatsApp ของ Twilio จากบัญชี Twilio ของคุณ แล้วป้อนคำสั่งให้ AI Agent เพื่อสร้างคลาวด์ฟังก์ชัน sendWhatsAppConfirmation
ด้วย Twilio API:
Create a Cloud Function with Twilio's WhatsApp API to send a WhatsApp confirmation message. Here are the Twilio account details you will need: Twilio Account SID: <Your Twilio Account SID> Auth Token: <Your Twilio Authentication Token> WhatsApp number: <The Twilio WhatsApp Number>
คุณจะได้รับการตอบกลับในลักษณะที่คล้ายกับด้านล่าง:
ต่อไป ป้อนคำสั่งให้ AI Agent เพื่อสร้างคลาวด์ฟังก์ชันสุดท้ายสำหรับดูการจองทั้งหมดที่เก็บไว้ในฐานข้อมูล:
Write a cloud code function to view all reservations stored in the database in the same file with the other three cloud functions.
คุณจะได้รับการตอบกลับในลักษณะที่คล้ายกับด้านล่าง:
คุณได้สร้างฟังก์ชันทั้งหมดที่จำเป็นสำหรับแอปของคุณกับอินสแตนซ์ Back4app แล้ว ขั้นตอนต่อไปคือผสานรวมคลาวด์ฟังก์ชันใน Back4app backend เข้ากับแอป Vue ของคุณ
การผสานรวม Cloud Functions ในแอป Vue ของคุณ
ส่วนนี้จะสอนคุณวิธีผสานรวมคลาวด์ฟังก์ชันเข้ากับแอป Vue ของคุณ คุณสามารถเรียกใช้คลาวด์ฟังก์ชันที่คุณกำหนดบน Back4app Backend ภายในแอป Vue ของคุณโดยการรันฟังก์ชัน Parse.cloud.run()
แก้ไขบล็อก template ในไฟล์ ReservationForm.vue
เพื่อเรียกใช้ฟังก์ชัน submitReservation
เมื่อมีการส่งฟอร์ม:
// ReservationForm.vue <template> <div> <form @submit.prevent="submitReservation"> // calls the function on form submission <input v-model="reservation.name" placeholder="Name" required /> <input v-model="reservation.email" type="email" placeholder="Email" required /> <input v-model="reservation.date" type="date" placeholder="Date" required /> <input v-model="reservation.time" type="time" placeholder="Time" required /> <input v-model="reservation.phoneNumber" type="tel" placeholder="Phone Number" required /> <button type="submit">Create Reservation</button> </form> </div> </template>
จากนั้น แก้ไขบล็อก script ในไฟล์ ReservationForm.vue
เพื่อกำหนดฟังก์ชัน submitReservation
และเรียกใช้คลาวด์ฟังก์ชันที่เกี่ยวข้องกับการส่งฟอร์ม:
// ReservationForm.vue <script setup> import { ref } from "vue"; import Parse from "parse/dist/parse.min.js"; const reservation = ref({ name: "", email: "", date: "", time: "", phoneNumber: "", }); const submitReservation = async () => { try { const availabilityResult = await Parse.Cloud.run("checkAvailability", { date: reservation.value.date, time: reservation.value.time, }); if (availabilityResult.available) { const creationResult = await Parse.Cloud.run("createReservation", { ...reservation.value, date: { __type: "Date", iso: new Date( reservation.value.date + "T" + reservation.value.time, ).toISOString(), }, }); if (creationResult) { await Parse.Cloud.run("sendWhatsAppConfirmation", { to: reservation.value.phoneNumber, reserveeName: reservation.value.name, body: "Your reservation has been confirmed.", }); alert( "Reservation created and confirmation has been sent via WhatsApp.", ); } } else { alert("Sorry, the chosen date and time are not available."); } } catch (error) { console.error("Error creating reservation:", error); alert("Error while processing your reservation: " + error.message); } }; </script>
โค้ดข้างต้นจะเรียกใช้ฟังก์ชัน submitReservation
เพื่อจัดการการส่งข้อมูลการจอง
ฟังก์ชันนี้จะตรวจสอบความพร้อมของวันที่และเวลาที่เลือกโดยเรียกใช้คลาวด์ฟังก์ชัน checkAvailability
ถ้าวันที่และเวลาที่ระบุพร้อมใช้งาน โค้ดจะเรียกใช้คลาวด์ฟังก์ชัน createReservation
เพื่อสร้างการจองด้วยข้อมูลของผู้ใช้
จากนั้น โค้ดจะเรียกใช้คลาวด์ฟังก์ชัน sendWhatsAppConfirmation
เพื่อส่งข้อความ WhatsApp แจ้งให้ผู้เข้าชมทราบว่าการจองสำเร็จ
ต่อไป เพื่อให้ผู้เข้าชมสามารถดูช่องเวลาที่ถูกจองทั้งหมดได้ ให้แก้ไขบล็อก script ในไฟล์ ReservationList.vue
เพื่อเรียกใช้คลาวด์ฟังก์ชัน getAllReservations
:
// ReservationList.vue <script setup> import { ref, onBeforeMount } from "vue"; import Parse from "parse/dist/parse.min.js"; const reservations = ref([]); const fetchReservations = async () => { try { const result = await Parse.Cloud.run("getAllReservations"); reservations.value = result; } catch (error) { console.error("Error retrieving reservations:", error); alert(error.message); } }; onBeforeMount(fetchReservations); </script>
โค้ดข้างต้นจะเรียกใช้ฟังก์ชัน fetchReservations
ก่อนที่ Vue จะ mount คอมโพเนนต์ โดยใช้ฟังก์ชัน onBeforeMount
ซึ่งฟังก์ชัน fetchReservations
จะเรียกใช้คลาวด์ฟังก์ชัน getAllReservations
เพื่อดึงข้อมูลการจองทั้งหมดที่เก็บไว้ในคลาส Reservation
ของฐานข้อมูล Back4app
การทดสอบแอปพลิเคชัน
ก่อนที่จะปรับใช้แอปของคุณใน Back4app container ให้ทดสอบแอปเพื่อให้แน่ใจว่าฟีเจอร์ทั้งหมดทำงานได้อย่างสมบูรณ์
เริ่มต้นแอปของคุณโดยรันคำสั่งด้านล่าง:
npm run dev
การรันคำสั่งข้างต้นจะเริ่มแอปของคุณที่ http://localhost:5173/
เข้าชม http://localhost:5173/ เพื่อดูแอปของคุณ ดังที่แสดงในภาพด้านล่าง:
หากคุณเข้าชมแท็บ “View Reservations” คุณจะเห็นการจองที่ AI Agent ได้ใส่ข้อมูลลงในฐานข้อมูลไว้
สร้างการจองใหม่โดยกรอกข้อมูลในฟอร์มแล้วคลิกปุ่ม “Create Reservation”
เพื่อตรวจสอบว่าการจองของคุณสำเร็จหรือไม่ ให้เข้าชมแท็บ “View Reservations” ซึ่งคุณจะเห็นการจองของคุณ
สุดท้าย เปิดแอปพลิเคชัน WhatsApp ของคุณเพื่อดูข้อความยืนยันที่ถูกส่งไปยังหมายเลข WhatsApp ของคุณ
การปรับใช้แอปพลิเคชันของคุณด้วย Back4app’s AI Agent บน Back4app Containers
เพื่อปรับใช้แอปของคุณไปยัง Back4app container คุณจำเป็นต้องสร้าง Dockerfile
สำหรับแอป Vue ของคุณ
สร้างไฟล์ Dockerfile
ในไดเรกทอรีรากของโปรเจกต์ของคุณและเพิ่มโค้ดด้านล่าง:
# Dockerfile FROM node:18 WORKDIR /app COPY package*.json ./ RUN npm install COPY . . RUN npm run build FROM nginx:1.19.0-alpine COPY --from=0 /app/dist /usr/share/nginx/html EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]
หลังจากสร้างไฟล์ Dockerfile
แล้ว push โค้ดของคุณไปยัง GitHub repository เพื่อปรับใช้แอปจาก GitHub ด้วย AI Agent Back4app คุณจำเป็นต้องติดตั้ง Back4App Containers GitHub App ในบัญชี GitHub ของคุณ
คุณยังต้องให้สิทธิ์ที่จำเป็นกับแอปพลิเคชันเพื่อเข้าถึง repository โค้ดของแอปของคุณ
ต่อไป ไปที่หน้าแรกของ Back4app แล้วคลิกปุ่ม “New App” ที่มุมบนขวาของหน้าจอของคุณ
สิ่งนี้จะพาคุณไปยังหน้าตั้งค่า ที่คุณจะต้องเลือกรูปแบบแอปที่ต้องการสร้าง
เลือกตัวเลือก Back4app Agent ดังที่แสดงในภาพด้านล่าง
เมื่อคุณเลือกตัวเลือก Back4app Agent คุณจะถูกเปลี่ยนเส้นทางไปยังหน้า Back4app AI Agent
ให้ป้อนข้อความต่อไปนี้กับ AI Agent เพื่อเริ่มกระบวนการปรับใช้แอปของคุณ:
Deploy my "YOUR_REPOSITORY_URL" repository on GitHub to a Back4App Container. Here are the required environmental variables: VITE_BACK4APP_APPLICATION_ID = "BACK4APP_APP_ID" VITE_BACK4APP_JAVASCRIPT_KEY = "BACK4APP_JAVASCRIPT_KEY"
แทนที่ค่า placeholder ด้วยค่าจริง ข้อความข้างต้นจะเริ่มกระบวนการปรับใช้แอปของคุณ
เมื่อกระบวนการเสร็จสมบูรณ์ AI Agent จะตอบกลับแสดงผลว่าการปรับใช้สำเร็จหรืออยู่ในสถานะรอดำเนินการ หากคุณได้รับสถานะรอดำเนินการ คุณสามารถติดตามสถานะการปรับใช้แอปของคุณได้จาก Back4app container dashboard
คุณจะได้รับการตอบกลับในลักษณะที่คล้ายกับภาพด้านล่าง:
นอกจากนี้คุณยังสามารถ ปรับใช้แอปของคุณด้วยตนเองไปยัง Back4app container
บทสรุป
ในบทความนี้ คุณได้สร้างและปรับใช้แอปจองร้านอาหารที่ใช้งานได้จริงโดยใช้ Back4app, Vue และ Twilio API
ด้วยแอปของคุณ ผู้ใช้สามารถทำการจองซึ่งข้อมูลจะถูกเก็บไว้ใน Back4app backend และพวกเขาสามารถดูการจองที่ทำผ่านอินเทอร์เฟซที่สร้างด้วย Vue และขับเคลื่อนโดย Back4app cloud code ที่คุณสร้างขึ้นด้วย AI Agent
นอกจากนี้ แอปของคุณยังยืนยันการจองที่สำเร็จผ่านข้อความ WhatsApp โดยใช้ Twilio API
คุณสามารถค้นหาซอร์สโค้ดทั้งหมดที่ใช้ในบทแนะนำนี้ได้ที่ GitHub repository