Score:0

เขตข้อมูลอ้างอิงที่กำหนดเองบันทึกค่าว่าง

ธง ph

ฉันได้สร้างฟิลด์ที่กำหนดเองตามฟิลด์อ้างอิงเอนทิตี แต่ target_id ที่บันทึกนั้นมาจากระบบภายนอก

ฉันมีประเภทฟิลด์ วิดเจ็ตฟิลด์ และองค์ประกอบการเติมข้อความอัตโนมัติที่กำหนดไว้และใช้งานได้ และค่าที่ถูกต้องจะถูกบันทึกลงในตารางฐานข้อมูลที่เกี่ยวข้องสำหรับค่าที่ถูกต้อง

บิตที่ฉันติดอยู่คือหากฟิลด์นี้เว้นว่างไว้จะยังคงบันทึกบันทึกลงในฐานข้อมูล แต่มี target_id ที่ว่างเปล่า ฉันควรจะหยุดทำอย่างนั้นได้อย่างไร?

นี่คือการใช้งาน isEmpty() ของฉัน ซึ่งฉันคัดลอกมาจากคำนิยามฟิลด์ EntityReference ฉันเดาว่านี่คือตัวการ แต่ฉันไม่แน่ใจว่าจะแก้ไขได้อย่างไร:

  /**
   * {@inheritdoc}
   */
  ฟังก์ชั่นสาธารณะ isEmpty () {
    $target_id = isset($this->target_id) ? $this->target_id : NULL;
    ถ้า ($target_id !== NULL) {
      กลับ FALSE;
    }
    กลับ TRUE;
  }
cn flag
คุณช่วยโพสต์การใช้งาน `isEmpty()` ได้ไหม หากคุณไม่มี การใช้งานพื้นฐาน (`EntityReferenceItem::isEmpty()`) เข้ากันได้กับการเปลี่ยนแปลงในชั้นเรียนของคุณหรือไม่
Lambic avatar
ph flag
@Clive เพิ่ม ฉันจะแก้ไขจุดบกพร่องในวันจันทร์ เว้นแต่จะมีคนเสนอวิธีแก้ปัญหาในระหว่างนั้น
Score:0
ธง ph

มันว่างเปล่า() เป็นผู้ร้ายที่นี่ ด้วยเหตุผลบางอย่างที่ฉันไม่เข้าใจ $this->target_id ถูกตั้งค่าเป็นสตริงว่างแทนที่จะเป็น NULL ดังนั้นการเปลี่ยนแปลง ถ้า ($target_id !== NULL) เพียงแค่ ถ้า ($target_id) ซ่อมมัน.

ขอบคุณ @Clive สำหรับเบาะแส

โพสต์คำตอบ

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