Score:2

วิธีเปลี่ยนมุมมองหลังวิดเจ็ตที่เลือกในแบบฟอร์มแก้ไขโหนดปกติ

ธง sa

ฉันมีฟิลด์ entity_reference ในประเภทเนื้อหา: field_node_ref

ในคำนิยามของฟิลด์ มันสามารถอ้างอิงโหนดทั้งหมดของประเภทที่กำหนด

วิดเจ็ตที่ใช้สำหรับฟิลด์นี้คือ เลือก วิดเจ็ต

ขึ้นอยู่กับบริบท ในแบบฟอร์มการแก้ไขโหนด ฉันต้องการใช้มุมมองที่แตกต่างกันเพื่อเติมข้อมูล #ตัวเลือก ของ เลือก วิดเจ็ต

อดีต:

บริบท A --> มุมมอง A จะถูกใช้

บริบท B --> มุมมอง B จะถูกใช้

บริบทถูกคำนวณในตรรกะทางธุรกิจของฉัน (ฉันพูดถึงมันเพื่อแสดงว่าสามารถใช้หลายมุมมอง จากนั้นจึงไม่สามารถเข้ารหัสในคำจำกัดความของฟิลด์ได้)

ใน my_module_form_alter เดอะ #ตัวเลือก มีการเติมข้อมูลแล้วและฉันไม่สามารถอัปเดตอาร์เรย์วิดเจ็ตที่เลือกเพื่อเติมข้อมูลด้วยมุมมองที่กำหนดเองได้ ฉันคิดว่าฉันต้องขอก่อน แต่ฉันไม่รู้วิธี

cn flag
บริบทที่แตกต่างกันขึ้นอยู่กับอะไร? อาจสร้างความแตกต่างให้กับแนวทางที่ดีที่สุด
Baud avatar
sa flag
@Clive: ขึ้นอยู่กับค่าของฟิลด์เครื่องสถานะ ซึ่งเป็นอีกฟิลด์หนึ่งของโหนดที่แก้ไข ขึ้นอยู่กับสถานะ/เฟส/สถานะของโหนดที่แก้ไข ฉันต้องใช้มุมมอง A, B หรือ C เพื่อเติม #options ของวิดเจ็ตที่ฉันเลือก
Score:2
ธง in

คุณสามารถสร้างการเลือกแบบกำหนดเองสำหรับฟิลด์อ้างอิงเอนทิตีโดยการตั้งค่าการแสดงการอ้างอิงเอนทิตีของข้อมูลพร็อพเพอร์ตี้เป็นแหล่งที่มา

ในการทำเช่นนี้ ให้สร้างมุมมองที่มีการแสดงการอ้างอิงเอนทิตี สร้างมุมมองนั้นตามปกติ (เลือกฟิลด์ที่จะแสดงผล ตัวกรองพื้นฐาน การเรียงลำดับ ขีดจำกัด ฯลฯ) จากนั้นสร้าง ตัวกรองตามบริบทที่กำหนดเองคว้าบริบท แทรกคลาสบริการที่จำเป็น ใช้ตรรกะทางธุรกิจของคุณ จากนั้นใช้ตัวกรองตามบริบทนั้นกับมุมมอง

ในกรณีส่วนใหญ่ คุณจะสร้างตัวกรองตาม ID ของเอนทิตี และหน้าที่ของตัวกรองคือค้นหาว่ารายการนั้นควรแสดงหรือระงับ "รหัสเนื้อหาจาก URL" ที่สร้างขึ้นใน Drupal และ "รหัสคำอนุกรมวิธานจาก URL" คือตัวอย่างของตัวกรองประเภทนี้ ตัวกรองของคุณจะต้องรวมตรรกะมากกว่าการเปรียบเทียบ ID

จากนั้นในการตั้งค่าฟิลด์การอ้างอิงเอนทิตี ให้เปลี่ยน วิธีการอ้างอิง ถึง มุมมอง: กรองตามมุมมองการอ้างอิงเอนทิตี.

Baud avatar
sa flag
นี่เป็นความคิดที่ดี ฉันจะรอถ้าไม่มีใครให้เคล็ดลับที่ดีกว่านี้ก่อนที่จะยอมรับคำตอบนี้ ฉันคาดหวังว่าจะมีเบ็ดเร็วเพื่อสลับมุมมองที่ใช้แล้วได้อย่างง่ายดาย (เช่นที่เราทำได้ด้วยวิดเจ็ตเติมข้อความอัตโนมัติ)

โพสต์คำตอบ

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