ตกลง... ฉันอาจไม่เข้าใจวิธีที่ถูกต้องในการทำเช่นนี้ แต่...
ฉันมีเอนทิตี (แปลได้) (entity1) พร้อมฟิลด์ entity_reference ที่ฝังโดยรหัส (ประกาศด้วยวิธี baseFieldDefinitions) ฟิลด์นี้ไม่สามารถแปลได้
ฟิลด์นี้ฝังเอนทิตีประเภทอื่น (entity2) ซึ่งสามารถแปลได้เช่นกัน
ฉันสร้างเอนทิตี "entity2" สองรายการเป็นภาษาฝรั่งเศส และแปลเพียงรายการเดียว เอนทิตีทั้งสองนี้แนบกับฟิลด์ที่กำหนดไว้ก่อนหน้านี้ในเอนทิตี 1
เมื่อแสดงอินสแตนซ์ของ entity1 :
- ในภาษาฝรั่งเศส จะแสดงเอนทิตีย่อยสองรายการในภาษาฝรั่งเศส
- ในภาษาอังกฤษ จะแสดงเอนทิตีย่อยหนึ่งรายการเป็นภาษาอังกฤษ (อันที่แปลแล้ว) และอันที่สองในภาษาฝรั่งเศส (อันที่ไม่ได้แปล)
ฉันพยายามติดตั้งentity_language_fallbackไม่สำเร็จ ฉันลองกำหนดค่าบางอย่างไม่สำเร็จเช่นกัน...
จะตั้งค่าการแสดงผลของฉันให้แสดงเฉพาะรายการย่อยที่มีอยู่สลับภาษาได้อย่างไร? ฉันลองใช้งานแบบเดียวกันกับโหนด (ประเภทโหนดของฉันฝังฟิลด์อ้างอิงเอนทิตีที่สามารถอ้างอิงโหนดประเภทเดียวกันได้) และฉันก็ได้ผลลัพธ์เหมือนกัน... ตรรกะของฉันผิดหรือเปล่า ใน d7 ฉันจำได้ว่าเมื่อไม่มีการแปล การแสดงฟิลด์จะแสดง "การแปลไม่พร้อมใช้งาน" สำหรับผู้ดูแลระบบ และไม่แสดงข้อมูลใด ๆ สำหรับผู้ใช้ที่ไม่ระบุตัวตน...
ฉันต้องสร้างรูปแบบการอ้างอิงเอนทิตีใหม่และแทนที่เมธอด "getEntitiesToView" เพื่อกรองภาษาหรือไม่ ฉันไม่เห็นวิธีอื่นจริง ๆ และฉันรู้สึกผิดหวังเล็กน้อยที่ฟิลด์อ้างอิงเอนทิตี (และตัวหลักเอง) ไม่ดูแลพฤติกรรมทางภาษา
ถ้าใครมีข้อเสนอแนะก็จะเป็นประโยชน์
ขอบคุณล่วงหน้า.