Assuming you are implementing your django blog post with search form(Bootstrap) or any HTML forms, but do not know how make it functional. This post is created for you.

Prerequisites

YOU SHOULD

  • Get familiar with basic Django, and its structures
  • Get familiar with Bootstrap, and basic frontend programming languages , HTML…

หลังจากทั้ง 2 EPs ที่ผ่านมาได้ทำระบบ Login และทำความเข้าใจกระบวนการต่าง ๆ ไปพอสมควร จนเกือบจะสมบูรณ์กันแล้วครับ แต่จะยังคงเหลือระบบอีกบางส่วนครับ แต่ก็เหลือไม่เยอะแล้ว คือเหลือ Logout และการทำ Message Flashing ซึ่งหลายท่านอาจจะยังงง ๆ อยู่ว่า Message Flashing มันคืออะไร ใน Ep นี้มีคำตอบครับ

จุดประสงค์

  • เข้าใจและสามารถสร้างฟังก์ชันเพื่อทำการ Logout ออกจากระบบได้
  • เข้าใจและสามารถใช้งานการทำ Message Flashing ซึ่งเป็นฟีเจอร์ที่จะช่วยให้ฟีดแบ็คแก่ผู้ใช้ ซึ่งจะช่วยสร้างประสบการณ์การใช้งานของผู้ใช้ (User Experience)…

สำหรับใน Ep.2 นี้จะเป็นการเขียนฟังก์ชัน login เพื่อรับค่าจากฟอร์มที่เราเขียนไว้ในฝั่ง Frontend กันครับ และทำการเช็ค password โดยใช้ check_password_hash รวมไปถึงการใช้ UserMixin คลาสเข้ามาช่วยเพื่อสืบทอดเมธอดต่าง ๆ ที่จำเป็นในระบบ Login-Logout ในคลาส User ของเรา การใช้งาน flask_wtf รวมไปถึงการทำความรู้จักกับ SECRET_KEY พร้อมการใช้งานกันครับ

จุดประสงค์

  • เข้าใจและสามารถใช้งาน UserMixin คลาส เพื่อสืบทอดและเรียกใช้งานเมธอดเกี่ยวกับการ Login-Logout ได้
  • เข้าใจและสามารถใช้งาน flask-wtf ได้
  • เข้าใจ flash message
  • เข้าใจ SECRET_KEY และสามารถสร้าง SECRET_KEY เพื่อใช้งานได้…

flask-login เป็นไลบรารี่ที่ได้รับความนิยมสูงสุดสำหรับ Flask Framework สำหรับพัฒนาระบบยืนยันตัวตน (Authentication Systems) สำหรับใน tutorial นี้จะเป็นการสอนการใช้งาน Flask Authentication Systems โดยประยุกต์ใช้งาน flask-login ไลบรารี่ เข้ามาใช้ในโปรเจคท์นี้ พร้อมทั้งทำความรู้จักกับ LoginManager คลาส login_required decorator, และ user_loader ฟังก์ชัน รวมไปถึงการสร้างแบบฟอร์มสำหรับการล็อกอินในหน้าเว็บ

สำหรับท่านใดที่ยังไม่รู้ว่า Flask คืออะไร ทำไมถึงต้องใช้ Flask รับชมได้ที่วิดีโอนี้

Flask Introduction- แนะนำการเขียนพัฒนาเว็บด้วยไพธอน(Flask)

ปรับแต่ง form ให้สวยขึ้นกว่าเดิม

Django Forms: Form Decoration

หลายคนอาจสงสัยถ้าเรียกตัวแปรแบบนี้เวลาจะยัด style หรือเพิ่ม class มันต้องทำอย่างไรซึ่งวันนี้ผมจะสอนเรื่องของการตกแต่ง form ให้ดูสวยงามและนำเอา bootstrap มาใช้งานเพื่อความรวดเร็วในการทำเว็บมากยิ่งขึ้นมาเริ่มกันเลยครับ

Set up Bootstrap

ในส่วนของการนำ Bootstrap มาใช้เราจะติดตั้งแบบ link โดยนำ link ไปใส่ใน <head> Tag ในไฟล์ order.html

<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" …

Model forms สร้าง form ตาม Model ได้แบบรวดเร็ว

Django Forms: Model Forms

Model Forms เป็นตัวที่ทำให้เราสร้าง Forms ได้ง่ายขึ้นมากในแต่ละ Model ก็จะมี Field ที่ต้องใส่เพื่อเพิ่มข้อมูลเข้าไปใน Database ซึ่งเราสามารถที่จะอ้างอิง Field ที่ Model ต้องการเพื่อนำไปสร้าง Form ได้ซึ่งใน Form ก็จะมี Field ตามที่เราสร้างใน Model เลยโดยที่เราไม่ต้องไปสร้าง Form เพิ่มแยกขึ้นมากริ่นมาพอควรแล้วเรามาลองสร้าง Model เพื่อที่จะเอาไปทำ Form กันเลยดีกว่าครับ

Create Model

เราสร้าง Model ที่เป็น Order และ Water เพื่อเก็บข้อมูลที่ลูกค้าสั่งและน้ำหวานที่ให้ลูกค้าสามารถสั่งได้โดยเราไปที่ models.py …

Django Form ง่ายกว่าที่คิด

Photo by: https://www.freepik.com/free-vector/registration-form-template-with-flat-design_3301477.htm#page=1&query=forms&position=1

Django Form

การสร้าง form ใน html นั้นในบางครั้งอาจมีความสับสนในการไล่ดู code ย้อนหลังเพราะมี fields เป็นจำนวนมากและถ้าจะต้อง validate ต้องขียน javascript เพิ่มเติมเพื่อทำการ validate ข้อมูลที่อยู่ใน form ซึ่งในตัว Django form นั้นจะช่วยเราทั้งการเขียนให้ง่ายขึ้นอ่านสะดวกขึ้นแล้วยังสามารถ validate ข้อมูลได้อีกด้วยบทความนี้ผมจะพาไปสร้าง form การสั่งน้ำแข็งใสกันเริ่มกันเลยดีกว่า ❤❤❤

Create a new project

สร้าง project ใหม่ขึ้นมาโดยใช้คำสั่ง (set virtual environment)

django-admin startproject myform

สร้าง app ใหม่ใน project myform ของเรา ***ต้องเข้าไปใน folder ที่เป็น project ของเราก่อนแล้วค่อยสร้าง app ให้ app อยู่ภายใต้ folder…

พบกันอีกครั้งครับกับซีรีย์ JavaScript Ep.4 หลังจากห่างหายไปพักหนึ่งต้องขออภัยท่านที่ติดตามกันอย่างเหนียวแน่นทุกท่านครับ ท่านใดที่ยังไม่ได้อ่าน Ep.3 กลับไปอ่านก่อนได้เลยครับ ใน Ep.3 JavaScript Output และใน Ep นี้ ไม่รอช้า ไปดูจุดประสงค์ของ Ep นี้กันเลยครับ

จุดประสงค์(Objectives)

  1. รู้และเข้าใจความหมายของ JavaScript Statement
  2. รู้และเข้าใจ Statements ประกอบไปด้วยอะไรบ้าง
  3. รู้และเข้าใจ White Space และสามารถใช้ได้อย่างถูกต้องตามมาตรฐาน
  4. สามารถใช้ Line Break และขึ้นบรรทัดใหม่ ได้อย่างถูกต้องตามมาตรฐาน
  5. รู้และเข้าใจ Code Blocks
  6. รู้และอธิบาย คำสงวน (Reserved Words) ในภาษา JavaScript ได้…

สร้าง RESTful API ง่ายมากโดยใช้ Django

หลาย ๆ คนอาจเคยได้ยินเกี่ยวกับ REST framework ของ Django กันมาบ้างแล้วแต่ไม่มีโอกาสได้ทำความรู้จักสักทีวันนี้ผมจะพามารู้จักกับเจ้าตัว REST framework ครับอย่างแรกเราก็ควรเข้าใจก่อนใช่ไหมครับว่ามันใช้ทำอะไร

What is REST

อธิบายแบบง่าย ๆ นะครับในตัวของ REST มันจะช่วยเราสร้าง Web Service โดยใช้เทคโนโลยี Web Protocol เพื่อที่ติดต่อแลกเปลี่ยนข้อมูลกันระหว่าง Server กับ Client ซึ่งเราจะใช้สถาปัตยกรรมนี้ละไปสร้างสิ่งที่เรียกว่า RESTful API ที่ช่วยให้เราล้วงเอา response กลับมาเป็น Payload รูปแบบ JSON, XML หรือ format อื่น ๆ โดยเราจะสั่ง API ผ่าน Method ต่าง ๆ เช่น GET, POST, PUT, DELETE…

stackpython

Full Stack Python Developers

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store