โครงสร้างไดเร็คทอรี่ของคชสาร
โครงสร้างไฟล์และไดเร็คทอรี่พื้นฐานของคชสารประกอบด้วย
หมายเหตุ
ข้อกำหนดของชื่อไฟล์และไดเรคทอรี่ของคชสาร
- public_html/
- ckeditor/ เป็นไดเร็คทอรี่ติดตั้งของ CKEditor (ถ้าไม่มีการใช้ CKEditor สามารถลบออกได้)
- datas/ เป็นไดเร็คทอรี่ใช้สำหรับเก็บไฟล์ต่างๆที่ระบบสร้างขึ้นขณะรัน เช่น cache, log และไฟล์ต่างๆที่ผู้ใช้อัปโหลดขึ้นไป ไดเรคทอรี่นี้ต้องสามารถเขียนได้ด้วย
- js/ เป็นไดเรคทอรี่สำหรับเก็บไฟล์ javascript ต่างๆ (Kotchasan ติดตั้งมาพร้อมกับ GAjax Javascript Library)
- Kotchasan/ เป็นไดเรคทอรี่ที่เก็บไฟล์หลักต่างๆของ Kotchasan Web Framework
- language/ เป็นไดเร็คทอรี่สำหรับเก็บไฟล์ภาษาต่างๆ
- projects/ เป็นไดเร็คทอรี่เก็บโปรเจ็คตัวอย่างการใช้งาน Kotchasan Web Framework (เวลาใช้งานจริงไดเรคทอรี่นี่ไม่ต้องอัปโหลด)
- PDF/ เป็นไดเร็คทอรี่เก็บไฟล์ของ FPDF (ถ้าไม่ต้องการใช้ FPDF สามารถลบออกได้)
- skin/ เป็นไดเร็คทอรี่สำหรับเก็บไฟล์ template และ ไฟล์ CSS (Kotchasan ติดตั้งมาพร้อมกับ GCSS CSS Framework)
- test/ เป็นไดเร็คทอรี่เก็บไฟล์ของ Unit Test (ไม่ต้องอัปโหลด)
- index.php เป็นไฟล์หลักของ Application ใช้สำหรับการเรียกหน้าเว็บ (เบื้องต้นถูกตั้งค่าให้แสดงผลโปรเจ็คตัวอย่าง Welcome)
หมายเหตุ
- สีแดง เป็นไดเร็คทอรี่หลักของคชสาร
- สีเขียว เป็นไดเรคทอรี่หลักของแอพพลิเคชั่นซึ่งใช้ร่วมกัน (หากในโปรเจ็คประกอบด้วยแอพพลิเคชั่นมากกว่า 1 ตัว ยกตัวอย่างเช่น GCMS ซึ่งมีแอพพลิเคชั่นหลักที่แสดงหน้าเว็บ และ แอพพลิเคชั่นส่วนแอดมิน)
- สีน้ำเงิน เป็นไดเร็คทอรี่ของ Third party ที่คชสารสนับสนุนอยู่แล้ว ถ้าไม่มีการใช้งานสามารถลบออกได้
- public_html/
- modules/ เป็นไดเร็คทอรี่ใช้สำหรับเก็บโค้ดโปรแกรม ภายในจะถูกแบ่งออกเป็นโมดูลต่างๆ และแต่ละโมดูลจะประกอบด้วย models, controllers และ views ตามโครงสร้างของ MVC
- settings/ เป็นไดเร็คทอรี่สำหรับเก็บค่าติดตั้งต่างๆ
- index.php เป็นไฟล์หลักของ Application ใช้สำหรับการเรียกหน้าเว็บ
- admin/
- modules/ เป็นไดเร็คทอรี่ใช้สำหรับเก็บโค้ดโปรแกรม สำหรับส่วน admin มีองค์ประกอบเหมือน public_html/modules/
- settings/ เป็นไดเร็คทอรี่สำหรับเก็บค่าติดตั้งต่างๆ เพิ่มเติมจาก public_html/settings/ ซึ่งจะถูกเรียกใช้เฉพาะส่วน admin เท่านั้น
- index.php เป็นไฟล์หลักหน้า admin
ข้อกำหนดของชื่อไฟล์และไดเรคทอรี่ของคชสาร
- ไฟล์ต่างๆภายใต้ไดเรคทอรี่ modules, settings และ language จะต้องเป็นภาษาอังกฤษตัวพิมพ์เล็กและตัวเลขเท่านั้น
- สำหรับ Class ต่างๆที่สร้างขึ้นเพิ่มเติมเพื่อใช้งานในแอพพลิเคชั่น ชื่อไดเร็คทอรี่จะเป็น Case sensitive และปฎิบัติตาม PSR-4 (แนะนำรูปแบบเป็น StudlyCaps ตัวเลขและภาษาอังกฤษตัวพิมพ์เล็กทั้งหมด แต่ขึ้นต้นด้วยภาษาอังกฤษตัวพิมพ์ใหญ่ เช่น Gcms\Login) เช่น คลาส Gcms\Login จะเก็บไฟล์ไว้ที่ /Gcms/Login.php
สามารถดูโครงสร้างของไฟล์และไดเร็คทอรี่แบบสมบูรณ์ได้ที่โปรเจ็ค GCMS