คำถามและคำตอบสัมภาษณ์ Django 15 อันดับแรก (2025)
ต่อไปนี้เป็นคำถามและคำตอบในการสัมภาษณ์ของ Django สำหรับนักศึกษาใหม่รวมถึงผู้สมัคร Django Developer ที่มีประสบการณ์เพื่อรับงานในฝัน
1) อธิบายว่าจังโก้คืออะไร?
Django เป็นเฟรมเวิร์กเว็บแบบโอเพ่นซอร์สสำหรับการสร้างเว็บแอปพลิเคชันที่ใช้ Python เนื่องจากมีความต้องการอย่างมากสำหรับเว็บแอปพลิเคชันที่ใช้ Python ความต้องการสำหรับ Django Developers จึงมีสูงเช่นกัน
ดาวน์โหลด PDF ฟรี: คำถามและคำตอบสัมภาษณ์ Django
2) พูดถึงฟีเจอร์ที่มีอยู่ใน Django มีอะไรบ้าง?
คุณสมบัติที่มีใน Django คือ
- ส่วนต่อประสานผู้ดูแลระบบ (CRUD)
- แม่แบบ
- การจัดการแบบฟอร์ม
- สากล
- เซสชัน การจัดการผู้ใช้ สิทธิ์ตามบทบาท
- การแมปเชิงวัตถุสัมพันธ์ (ORM)
- กรอบการทดสอบ
- เอกสารที่ยอดเยี่ยม
3) พูดถึงสถาปัตยกรรมของสถาปัตยกรรม Django หรือไม่?
สถาปัตยกรรม Django ประกอบด้วย
- รูปแบบ: มันอธิบายสคีมาฐานข้อมูลของคุณและของคุณ โครงสร้างข้อมูล
- Views: ควบคุมสิ่งที่ผู้ใช้เห็น มุมมองจะดึงข้อมูลจากโมเดลที่เหมาะสมและดำเนินการคำนวณใดๆ ที่ทำกับข้อมูลและส่งผ่านไปยังเทมเพลต
- แม่แบบ: จะกำหนดวิธีที่ผู้ใช้มองเห็น อธิบายว่าข้อมูลที่ได้รับจากมุมมองควรมีการเปลี่ยนแปลงหรือจัดรูปแบบเพื่อแสดงบนเพจอย่างไร
- ควบคุม: กรอบงาน Django และการแยกวิเคราะห์ URL
4) เหตุใดจึงควรใช้ Django เพื่อการพัฒนาเว็บ?
- ช่วยให้คุณสามารถแบ่งโมดูลโค้ดออกเป็นกลุ่มตรรกะเพื่อให้มีความยืดหยุ่นในการเปลี่ยนแปลง
- เพื่อความสะดวกในการดูแลเว็บไซต์ จึงจัดให้มีผู้ดูแลเว็บที่สร้างขึ้นโดยอัตโนมัติ
- มีการจัดเตรียมไว้ล่วงหน้า API สำหรับงานของผู้ใช้ทั่วไป
- มันให้ระบบเทมเพลตแก่คุณในการกำหนด HTML เทมเพลตสำหรับหน้าเว็บของคุณเพื่อหลีกเลี่ยงการทำซ้ำโค้ด
- ช่วยให้คุณสามารถกำหนด URL ของฟังก์ชันที่กำหนดได้
- ช่วยให้คุณสามารถแยกตรรกะทางธุรกิจออกจาก HTML ได้
- ทุกอย่างอยู่ในหลาม
5) อธิบายว่าคุณสามารถสร้างโปรเจ็กต์ใน Django ได้อย่างไร
ในการเริ่มต้นโปรเจ็กต์ใน Django คุณใช้คำสั่ง $ django-admin.py จากนั้นใช้คำสั่ง
- โครงการ
- _init_.py
- manage.py
- settings.py
- url.py
6) อธิบายว่าคุณสามารถตั้งค่าฐานข้อมูลใน Django ได้อย่างไร?
คุณสามารถใช้คำสั่งแก้ไข mysite/setting.py มันเป็นโมดูลหลามปกติที่มีระดับโมดูลแสดงถึงการตั้งค่า Django Django ใช้ SQLite เป็นค่าเริ่มต้น มันง่ายสำหรับผู้ใช้ Django โดยไม่จำเป็นต้องติดตั้งประเภทอื่น ในกรณีที่ตัวเลือกฐานข้อมูลของคุณแตกต่างออกไปคุณต้องใช้คีย์ต่อไปนี้ใน ฐานข้อมูล 'ค่าเริ่มต้น' รายการเพื่อให้ตรงกับการตั้งค่าการเชื่อมต่อฐานข้อมูลของคุณ
- เครื่องยนต์: คุณสามารถเปลี่ยนฐานข้อมูลได้โดยใช้ 'django.db.backends.sqlite3' , 'django.db.backeneds.mysql', 'django.db.backends.postgresql_psycopg2', 'django.db.backends.oracle' และอื่น ๆ
- ชื่อ: ชื่อฐานข้อมูลของคุณ ในกรณีที่คุณใช้ SQLite เป็นฐานข้อมูล ในกรณีนั้นฐานข้อมูลจะเป็นไฟล์บนคอมพิวเตอร์ของคุณ ชื่อ ควรเป็นพาธแบบเต็ม รวมถึงชื่อไฟล์ของไฟล์นั้นด้วย
หากคุณไม่ได้เลือก SQLite เป็นฐานข้อมูลของคุณ จะต้องเพิ่มการตั้งค่า เช่น รหัสผ่าน โฮสต์ ผู้ใช้ ฯลฯ
7) ยกตัวอย่างว่าคุณสามารถเขียน VIEW ใน Django ได้อย่างไร
Views คือฟังก์ชัน Django ที่รับคำขอและส่งคืนการตอบกลับ ในการเขียนมุมมองใน Django เราใช้ตัวอย่างง่ายๆ ของ "Guru99_home" ซึ่งใช้เทมเพลต Guru99_home.html และใช้โมดูลวันที่-เวลาเพื่อบอกเราว่าเวลาใดทุกครั้งที่รีเฟรชเพจ ไฟล์ที่เราต้องแก้ไขเรียกว่า view.py และจะอยู่ภายใน mysite/myapp/
คัดลอกโค้ดด้านล่างลงไปแล้วบันทึกไฟล์
from datatime import datetime from django.shortcuts import render def home (request): return render(request, 'Guru99_home.html', {'right_now': datetime.utcnow()})
เมื่อคุณกำหนด VIEW แล้ว คุณสามารถยกเลิกการใส่เครื่องหมายข้อคิดเห็นบรรทัดนี้ใน urls.py ได้
# url ( r '^$' , 'mysite.myapp.views.home' ชื่อ 'Guru99')
ขั้นตอนสุดท้ายจะโหลดแอปพลิเคชันเว็บของคุณใหม่เพื่อให้เว็บเซิร์ฟเวอร์สังเกตเห็นการเปลี่ยนแปลง
8) อธิบายว่าคุณสามารถตั้งค่าไฟล์คงที่ใน Django ได้อย่างไร?
มีสามสิ่งสำคัญที่จำเป็นในการตั้งค่าไฟล์คงที่ใน Django
- ตั้งค่า STATIC_ROOT ใน settings.py
- เรียกใช้ Manage.py collectsatic
- ตั้งค่ารายการไฟล์คงที่บน Python ได้ทุกที่ แท็บเว็บ
9) พูดถึงเทมเพลต Django ประกอบด้วยอะไร?
เทมเพลตเป็นไฟล์ข้อความธรรมดา มันสามารถสร้างรูปแบบข้อความใด ๆ เช่น XML, CSV, HTML ฯลฯ เทมเพลตประกอบด้วยตัวแปรที่ถูกแทนที่ด้วยค่าเมื่อมีการประเมินเทมเพลตและแท็ก (% แท็ก %) ที่ควบคุมตรรกะของเทมเพลต
10) อธิบายการใช้ session framework ใน Django หรือไม่?
ใน Django กรอบงานเซสชันช่วยให้คุณสามารถจัดเก็บและดึงข้อมูลตามอำเภอใจตามผู้เข้าชมแต่ละไซต์ มันเก็บข้อมูลบนฝั่งเซิร์ฟเวอร์และสรุปการรับและส่งคุกกี้ เซสชันสามารถนำไปใช้ผ่านมิดเดิลแวร์ชิ้นหนึ่ง
11) อธิบายว่าคุณสามารถใช้เซสชันตามไฟล์ได้อย่างไร?
หากต้องการใช้เซสชันแบบไฟล์คุณต้องตั้งค่า SESSION_ENGINE การตั้งค่าเป็น “django.contrib.sessions.backends.file”
12) อธิบายการย้ายข้อมูลใน Django และคุณจะทำอย่างไรใน SQL?
การย้ายข้อมูลใน Django คือการเปลี่ยนแปลงโมเดลของคุณ เช่น การลบโมเดล การเพิ่มฟิลด์ ฯลฯ ลงในสคีมาฐานข้อมูลของคุณ มีคำสั่งหลายคำที่คุณใช้เพื่อโต้ตอบกับการย้ายข้อมูล
- โยกย้าย
- การย้ายถิ่นฐาน
- Sqlmigrate
เพื่อทำการโยกย้ายเข้ามา SQLคุณต้องพิมพ์คำสั่ง SQL เพื่อรีเซ็ตลำดับสำหรับชื่อแอปที่กำหนด
django-admin.py sqlsequencreset
ใช้คำสั่งนี้เพื่อสร้าง SQL ที่จะแก้ไขกรณีที่ลำดับไม่ซิงค์กับข้อมูลฟิลด์ที่เพิ่มขึ้นโดยอัตโนมัติ
13) พูดถึงบรรทัดคำสั่งใดที่สามารถใช้เพื่อโหลดข้อมูลลงใน Django?
หากต้องการโหลดข้อมูลลงใน Django คุณต้องใช้บรรทัดคำสั่ง โหลดข้อมูล Django-admin.py บรรทัดคำสั่งจะค้นหาข้อมูลและโหลดเนื้อหาของฟิกซ์เจอร์ที่มีชื่อลงในฐานข้อมูล
14) อธิบายว่าคำสั่ง django-admin.py makemessages ใช้ทำอะไร?
บรรทัดคำสั่งนี้ดำเนินการบนแผนผังต้นทางทั้งหมดของไดเร็กทอรีปัจจุบันและสรุปสตริงทั้งหมดที่ทำเครื่องหมายไว้สำหรับการแปล มันสร้างไฟล์ข้อความในไดเรกทอรีสถานที่
15) แสดงรายการรูปแบบการสืบทอดใน Django?
ใน Django มีรูปแบบการสืบทอดที่เป็นไปได้สามแบบ
- คลาสฐานนามธรรม: สไตล์นี้ใช้เมื่อคุณต้องการให้ชั้นเรียนของผู้ปกครองเก็บข้อมูลที่คุณไม่ต้องการพิมพ์สำหรับรุ่นลูกแต่ละรุ่นเท่านั้น
- การสืบทอดแบบหลายตาราง: สไตล์นี้ถูกใช้ หากคุณกำลังซับคลาสโมเดลที่มีอยู่ และต้องการให้แต่ละโมเดลมีตารางฐานข้อมูลของตัวเอง
- รุ่นพร็อกซี: คุณสามารถใช้โมเดลนี้ได้ หากคุณต้องการแก้ไขพฤติกรรมระดับ Python ของโมเดลเท่านั้น โดยไม่ต้องเปลี่ยนฟิลด์ของโมเดล
16) พูดถึงคลาสฟิลด์ Django ประเภทใด
ประเภทคลาสฟิลด์จะกำหนด
- ประเภทคอลัมน์ฐานข้อมูล
- วิดเจ็ต HTML เริ่มต้นเพื่อประโยชน์ในขณะที่แสดงผลฟิลด์แบบฟอร์ม
- ข้อกำหนดการตรวจสอบขั้นต่ำที่ใช้ในผู้ดูแลระบบ Django และในรูปแบบที่สร้างขึ้นโดยอัตโนมัติ
คำถามสัมภาษณ์เหล่านี้จะช่วยในวีว่าของคุณ (วาจา)
คุณ ชุดคำถามของคุณดีที่สุด แต่ฉันไม่มีประสบการณ์เกี่ยวกับการสัมภาษณ์ django เลย เพราะตอนนี้ฉันเรียน jango แล้ว และจะเสร็จสิ้นภายใน 15 วันข้างหน้า ดังนั้นสำหรับการเตรียมการสัมภาษณ์ ให้คำถามที่สำคัญกว่านี้และให้แนวคิดบางอย่างแก่ฉันด้วย
ฉันชอบวิธีการตอบคำถาม