ฉันกำลังพยายามสร้างคอนโทรลเลอร์เพื่อแสดงเอกสารประกอบการใช้โมดูล swagger_ui_formatter ที่ให้ตัวจัดรูปแบบไปยังฟิลด์ไฟล์ที่แสดงไฟล์ swagger (yml, yaml, json) โดยใช้ไลบรารีจาวาสคริปต์เพื่อแสดงเอกสารประกอบเหมือนที่เว็บไซต์ swagger ทำ จากนั้นฉันคัดลอกไฟล์ yml ของฉันในไดเร็กทอรีโมดูลและในคอนโทรลเลอร์ของฉันฉันสามารถโหลดไฟล์นี้ได้
ฟังก์ชั่นสาธารณะ buildApiDocumentation () {
$file_system = \Drupal::service('file_system');
$searchFiles = '/^.*\.(yml)$/';
$directory = dirname(__DIR__,2).'/docs';
$file = $file_system->scanDirectory($directory, $searchFiles, ['recurse' => FALSE]);
}
แต่ฉันไม่รู้ว่าจะเรนเดอร์ไฟล์นี้โดยใช้ตัวจัดรูปแบบ swagger ที่โมดูลมีให้ได้อย่างไร ฉันไม่สามารถใช้วิธีดั้งเดิมในการใช้ตัวจัดรูปแบบนี้ สร้างประเภทเนื้อหาด้วยฟิลด์ไฟล์ และหลังจากนั้นสร้างมุมมองและแสดงผล เนื่องจากเป็นกระบวนการที่ต้องทำด้วยตัวเองมาก และฉันต้องแก้ไขไฟล์เอกสารประกอบ api ในไดเร็กทอรีที่มีเพียงทีมพัฒนาเท่านั้นที่สามารถอัปเดตได้