Score:-2

ไม่มีฟิลด์การส่งแบบฟอร์มในการดำเนินการกับแบบฟอร์ม

ธง in

ฉันมีตัวจัดการการส่งแบบฟอร์มต่อไปนี้

ฟังก์ชัน mymod_form_submit(&$form, FormStateInterface $form_state) {
  $ka_selected = $form_state->getValue('ka_types');
  \Drupal::state()->set('ka_types', $ka_selected);
  กลับ $ka_selected;
}

มันส่งคืน ka_types ค่าฟิลด์ ฉันต้องการใช้ $ka_selected ในรหัสการกระทำที่กำหนดเอง

ดำเนินการฟังก์ชั่นสาธารณะ (ContentEntityInterface $entity = NULL) {
    // อ่านฟิลด์ทั้งหมดจากเอนทิตี
    $comment = $entity->get('comment_body')->getValue();
    $file_uri = file_create_url($entity->field_attachment->entity->getFileUri());
    $file_name = $entity->field_attachment->entity->getFileName();
    $ka = $entity->ka_selected->entity->getValue(); **//เกิดข้อผิดพลาดที่นี่**
    วว($ka);
}

ฉันสามารถอ่านเอนทิตีมุมมองอื่นๆ ได้ แต่ไม่ใช่แค่ฟิลด์นี้

ฉันจะใช้ค่าของ $ka_selected ในการกระทำที่กำหนดเองของฉัน?

Rainer Feike avatar
in flag
คุณช่วยอธิบายหน่อยได้ไหม - ฉันคิดว่าไม่มี hook_form_submit ใน Drupal 9 และเหตุใดคุณจึงเก็บมูลค่าของคุณไว้ในสถานะหนึ่งและคาดหวังในเอนทิตีในภายหลัง
Jiah avatar
in flag
Drupal 9 มี hook_form_submit และฉันสามารถถ่ายโอนค่าที่เลือกไว้ที่นั่นได้อย่างสมบูรณ์แบบ ค่าเหล่านั้นจะไม่ถูกส่งต่อไปยังวิธีดำเนินการในการดำเนินการแบบกำหนดเอง
apaderno avatar
us flag
Drupal ไม่เคยใช้ [`hook_form_submit()`](https://api.drupal.org/api/drupal/9.1.x/search/hook_submit_form) ตัวจัดการการส่งแบบฟอร์มไม่ใช่เบ็ด สิ่งที่เก็บไว้ในองค์ประกอบฟอร์มไม่จำเป็นต้องเป็นฟิลด์เอนทิตี ฉันสามารถใช้เพิ่มองค์ประกอบแบบฟอร์มในแบบฟอร์มแก้ไขเอนทิตี และค่าจะไม่สิ้นสุดในฟิลด์เอนทิตี
apaderno avatar
us flag
นอกจากนี้ ตัวจัดการการส่งแบบฟอร์มจะไม่ส่งกลับค่าใดๆ แม้ว่าจะต้องส่งคืนค่า ค่านั้นจะถูกละทิ้งจาก Drupal
Score:0
ธง in

เอาล่ะ ฉันสามารถหาคำตอบได้จากลิงค์ด้านล่าง: https://www.drupal.org/forum/support/module-development-and-code-questions/2021-07-04/read-view-row-entities-and-create-a#comment-14154305

ดำเนินการฟังก์ชั่นสาธารณะ (ContentEntityInterface $entity = NULL) {
    // อ่านฟิลด์ทั้งหมดจากเอนทิตี
    $comment = $entity->get('comment_body')->getValue();
    $file_uri = file_create_url($entity->field_attachment->entity->getFileUri());
    $file_name = $entity->field_attachment->entity->getFileName();
    $ka = \Drupal::state()->get('ka_types');
    วว($ka);
}

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา