ฉันกำลังทำงานกับฟังก์ชันเล็กน้อยที่อนุญาตให้ฝัง 'แบบฟอร์ม' ในช่องมุมมองที่กำหนดเองในมุมมองที่ฉันกำลังทำงานอยู่
มุมมองคือรายการตารางของเอนทิตี 'คำขอ' คอลัมน์สุดท้ายสุดในตารางสำหรับแต่ละแถวคือฟอร์ม 'แก้ไขด่วน' ซึ่งมีฟอร์มแบบกำหนดเองพร้อมฟิลด์สองสามฟิลด์ (ขึ้นอยู่กับเอนทิตีที่แสดงในแถวปัจจุบัน) ฉันกำลังพยายามหาวิธีสร้างปลั๊กอิน/ฟิลด์มุมมองที่กำหนดเองซึ่งจะให้ฉันแสดงฟอร์มที่ใช้งานได้ ฉันรู้วิธีสร้างตรรกะเพื่อแสดงฟิลด์ที่จำเป็นอย่างมีเงื่อนไข และรู้วิธีสร้างฟอร์มปกติ แต่ฉันไม่แน่ใจว่าจะสร้างฟิลด์นั้นลงในฟิลด์มุมมองได้อย่างไร
ฉันใช้ `drush create plugin-views-field' และฉันสามารถเรนเดอร์องค์ประกอบของฟอร์มในเมธอด render() แต่พวกมันไม่ได้ทำอะไรเลยจริง ๆ เนื่องจากไม่ได้สร้างฟอร์มจริง ๆ
มันจะง่ายกว่าหรือเป็นไปได้ไหมที่จะสร้างฟอร์มภายใน module/src/Form (ที่ยอมรับอาร์กิวเมนต์เพิ่มเติม) และเรนเดอร์ฟอร์มนั้นโดยใช้ formBuilder->getForm() หรือมีวิธีที่ฉันสามารถสร้างและเรนเดอร์ฟอร์มภายในมุมมอง เสียบเข้าไป?
แบบฟอร์มจำเป็นต้องทำงานผ่าน ajax เพื่อให้คุณสามารถแก้ไขได้อย่างรวดเร็วโดยไม่ต้องโหลดหน้าซ้ำ
ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชมอย่างมาก.
ตามความคิดเห็นด้านล่างดูเหมือนว่าฉันสามารถทำสิ่งต่อไปนี้:
$form = \Drupal::formBuilder()->getForm('Drupal\resume\Form\WorkForm');
$form->sub_id = รหัส;
คืนฟอร์ม $;
ในการเรนเดอร์ฟอร์ม จากนั้นภายใน formbuilder ให้ใช้ตัวแปร sub_id เพื่อแนบกับ ajax callback และ wrapper element