สวัสดีครับ ช่วงนี้ถามเรื่องจังโก้บ่อย อย่าเพิ่งรำคาญนะครับ คือผมไม่สามารถทำให้รูปภาพหรือ stylesheet ที่กำหนดไว้ใน directory หนึ่ง มีผลต่อโปรเจ็กที่สร้างโดยจังโก้น่ะครับ
ในไฟล์ setting.py จะมีตัวแปรชื่อ MEDIA_ROOT เข้าใจว่านั่นคือการกำหนดพาธให้จังโก้รู้ว่า เราต้องการใช้รูปภาพหรือ stylesheet จากที่ไหน
แต่หลังจากพยายามงมอยู่หลายรอบ ในเวลาหลายวัน ก็ไม่สามารถทำให้มันแสดงผลได้อย่างถูกต้องได้ ลองกำหนดตรงๆ แบบดื้อๆ คือ
มันกลับไปดึงไฟล์มาจากโฟลเดอร์ media ของ admin แทน (ผมตั้งชื่อโฟลเดอร์สำหรับ template ว่า media เหมือนกัน)
ผมจึงไม่แน่ใจว่าในไฟล์ template ต้องมีการกำหนดตัวแปรอะไรเพิ่มเติม เพื่อแทรกลงในพาธที่อ้างถึง directory ดังกล่าวหรือไม่
setting.py
# Absolute path to the directory that holds media.
MEDIA_ROOT = "/home/crucifier/paymentgateway/media/"
template (base.html)
<link href="css/content.css" rel="stylesheet" type="text/css">
ขอความกรุณาด้วยนะครับ
กระทู้เก่าๆ จะย้ายตามไปในภายหลัง ตอนนี้ปิดการโพสต์กระทู้ไว้ เหลือไว้เฉพาะอ้างอิงเท่านั้น
ใน settings.py จะมีตัวแปรที่เกี่ยวข้อง 3 ตัว คือ
MEDIA_ROOTMEDIA_URLและADMIN_MEDIA_PREFIXในกรณีนี้ผมเดาว่ามมันเกิดจากไม่ได้เซ็ตMEDIA_URLให้ถูกต้อง ลองดูแบบที่ผมใช้แล้วก็ใส่ใน urls.py ด้วย
จุดสำคัญอยู่ที่
^m/เพราะว่าเราไม่ได้ใช้ apache จริงๆ แล้ว django แนะนำให้เอา media ไปใส่ไว้ใน apache น่ะครับ แต่อันนี้แค่รันทดสอบขอบคุณมากๆ เลยครับ คุณ sugree ผมทำได้แล้ว
ว่าแต่ปัญหานี้ ผมพยายามหาอ่านใน doc ของ Django แล้ว ทำไมไม่เจอนะ Google ก็ไม่เห็น
มีอธิบายในนั้น แต่ไม่ได้ยกตัวอย่างชัดเจน มันกะว่ายังไงก็ควรจะแยก media ออกไปข้างนอก