
คำสั่ง Django แบบกำหนดเอง
Management commands, BaseCommand, การแยกวิเคราะห์อาร์กิวเมนต์, การจัดตารางเวลา, cron jobs, ระบบอัตโนมัติ
1ควรวางไฟล์ management command ของ Django แบบกำหนดเองไว้ที่ใดเพื่อให้ถูกตรวจพบโดยอัตโนมัติ?
ควรวางไฟล์ management command ของ Django แบบกำหนดเองไว้ที่ใดเพื่อให้ถูกตรวจพบโดยอัตโนมัติ?
คำตอบ
management command ของ Django แบบกำหนดเองต้องวางไว้ในไดเรกทอรี management/commands/ ของแอปพลิเคชัน Django ไดเรกทอรีนี้ต้องมีไฟล์ __init__.py ทั้งใน management/ และ commands/ Django จะสแกนเส้นทางนี้โดยอัตโนมัติเพื่อค้นหาคำสั่งที่มีอยู่ ชื่อไฟล์ Python จะกลายเป็นชื่อคำสั่งที่สามารถเรียกใช้งานได้ผ่าน manage.py
2ควรใช้คลาสฐานใดในการสร้าง management command ของ Django แบบกำหนดเอง?
ควรใช้คลาสฐานใดในการสร้าง management command ของ Django แบบกำหนดเอง?
คำตอบ
BaseCommand เป็นคลาสฐานมาตรฐานที่จัดเตรียมโดย django.core.management.base สำหรับสร้างคำสั่งแบบกำหนดเอง มันจัดเตรียมโครงสร้างพื้นฐานที่จำเป็น: การแยกวิเคราะห์อาร์กิวเมนต์ การจัดการสีของเอาต์พุต การจัดการข้อผิดพลาด และการผสานรวมกับ manage.py ต้องมีการ implement เมธอด handle() เพื่อบรรจุตรรกะของคำสั่ง
3จะกำหนดอาร์กิวเมนต์แบบตำแหน่ง (positional) ใน management command ของ Django แบบกำหนดเองได้อย่างไร?
จะกำหนดอาร์กิวเมนต์แบบตำแหน่ง (positional) ใน management command ของ Django แบบกำหนดเองได้อย่างไร?
คำตอบ
เมธอด add_arguments() ช่วยให้กำหนดอาร์กิวเมนต์ของคำสั่งได้โดยใช้ parser ของ argparse สำหรับอาร์กิวเมนต์แบบตำแหน่ง ให้ใช้ parser.add_argument('name') โดยไม่มีเครื่องหมายขีดนำหน้า คุณสามารถระบุ nargs สำหรับจำนวนอาร์กิวเมนต์ที่คาดหวัง ('+' สำหรับหนึ่งตัวหรือมากกว่า, '*' สำหรับศูนย์ตัวหรือมากกว่า) จากนั้นอาร์กิวเมนต์จะเข้าถึงได้ผ่าน dictionary options ใน handle()
ควรใช้เมธอดใดในการแสดงข้อความสำเร็จพร้อมสีที่เหมาะสมในคำสั่ง Django?
จะส่งสัญญาณข้อผิดพลาดที่หยุดการทำงานของคำสั่ง Django พร้อมรหัสออกที่ไม่ใช่ศูนย์ได้อย่างไร?
+15 คำถามสัมภาษณ์
หัวข้อสัมภาษณ์ Django อื่นๆ
พื้นฐาน Python
Python เชิงวัตถุ
พื้นฐาน Django
Django Models - พื้นฐาน
Django Views
เทมเพลต Django
ฟอร์ม Django
QuerySets ขั้นสูง
การยืนยันตัวตนใน Django
Django Middleware
Django Admin
Django REST Framework
Django Signals
การอัปโหลดไฟล์
การแคชใน Django
Django Sessions
อีเมลใน Django
การทดสอบ Django
ความปลอดภัยของ Django
การ Deploy Django
Django ORM ขั้นสูง
ประสิทธิภาพของ Django
Django & Celery
Django Channels
Django & GraphQL
Django & Docker
Django ในระบบนิเวศ Microservices
การทำให้รองรับหลายภาษาใน Django
Design Patterns ใน Django
Django Async และ ASGI
Settings และการตั้งค่า Production
Observability และ Monitoring
เชี่ยวชาญ Django สำหรับการสัมภาษณ์ครั้งถัดไป
เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์
เริ่มใช้ฟรี