Score:1

ดูด้วยเส้นทางของ api/VERSION/foo/bar/%node - %node ไม่ได้ถูก upcast ไปยัง Node object

ธง in

ฉันกำลังพยายามสร้าง Views จำนวนหนึ่งด้วยการแสดงผล REST Export พวกเขามีเส้นทางที่ตั้งค่าอยู่เบื้องหลัง 'api/.../.../.../%node' โดยที่ %node จะเป็น ID ที่ส่งไปยังคำขอที่จะอัปคาสต์มุมมองพื้นฐานมีตัวกรองตามบริบทของ Content ID (ไม่รวม) จากนั้น "มีคำใดๆ" จากโหนดนี้

อย่างไรก็ตาม ในตัวกรองบริบทสำหรับ "Taxonomy Term ID จาก URL" ที่มี "โหลดคำศัพท์จากหน้าโหนด":

      ถ้า (($node = $this->routeMatch->getParameter('node')) && $node instanceof NodeInterface) {
        $entity = $โหนด;
      }

การตรวจสอบนี้ล้มเหลว ดังนั้นจึงไม่มีการตรวจสอบเงื่อนไขของโหนด

ฉันต้องการพารามิเตอร์ที่กำหนดเองเพื่อจุดประสงค์นี้เพื่อบอกระบบว่าต้องค้นหาอะไรหรือไม่ ฉันคิดว่าตราบใดที่ ID เป็นโหนด การอัปคาสต์จะยังคงเกิดขึ้น แต่ก็ไม่เป็นเช่นนั้น

นี่คือสิ่งที่ xdebug เห็นใน ViewPageController สำหรับพารามิเตอร์เส้นทางและอาร์กิวเมนต์:

ป้อนคำอธิบายรูปภาพที่นี่

7611 คือรหัสโหนด ส่วนใดของกระบวนการควรหรือโดยปกติจะอัปคาสต์สิ่งนี้ไปยังวัตถุโหนด

ถ้าฉันทำสิ่งนี้ในอาร์กิวเมนต์ Views TID แน่นอนว่าฉันจะมีโหนด:

    // โหลดอาร์กิวเมนต์เริ่มต้นจากโหนด
    ถ้า (!empty($this->options['node'])) {
      // เพียงตรวจสอบว่าสามารถตรวจพบโหนดหรือไม่
      ถ้า (($node = $this->routeMatch->getParameter('node')) && $node instanceof NodeInterface) {
        $entity = $โหนด;
      }

      ถ้า (($node = $this->routeMatch->getParameter('node')) && !empty($node) && !($node instanceof NodeInterface)) {
        $entity = \Drupal::entityTypeManager()->getStorage('node')->load($node);
      }
    }

แก้ไข: อาจเกี่ยวข้อง: https://www.drupal.org/project/drupal/issues/2528166

4uk4 avatar
cn flag
คุณสามารถลองสร้างเส้นทางเอนทิตีมาตรฐานด้วยการอัปคาสต์ โดย Views จะรีไซเคิลเส้นทางที่มีอยู่ซึ่งควรรักษาการอัปคาสต์ไว้
Kevin avatar
in flag
วิธีที่จะทำงาน? ฉันสร้างการกำหนดเส้นทางที่ว่างเปล่า จากนั้นนำเส้นทางนั้นกลับมาใช้ใหม่ใน Views?
4uk4 avatar
cn flag
ใช่ ฉันรู้ว่านี่เป็นเพียงวิธีแก้ปัญหาเท่านั้นมิฉะนั้น เราไม่สามารถทำอะไรได้ที่นี่ คุณได้พบปัญหาที่ต้องแก้ไขแล้ว
Kevin avatar
in flag
ฉันเข้าใจ - ฉันไม่รู้ว่าคุณสามารถทำได้
sonfd avatar
in flag
@4uk4 - นั่นคือคุณสมบัติจริงหรือไม่ นั่นเป็นสิ่งที่อาจได้รับการ "แก้ไข" ในภายหลังหรือไม่
sonfd avatar
in flag
คุณช่วยเปลี่ยนเส้นทางมุมมองของคุณเพื่อบอกให้อัปคาสต์พารามิเตอร์ได้ไหม https://drupal.stackexchange.com/questions/81362/how-do-i-alter-the-route-defined-by-another-module

โพสต์คำตอบ

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