Score:-1

ฉันจะรับ uid (จำนวนเต็ม) จากเอนทิตีผู้ใช้ได้อย่างไร

ธง kz

มีโอกาสแปลกที่มีเมธอด "getUid()" สำหรับเอนทิตีผู้ใช้ ฉันลองแล้ว แต่ได้:

โทรไปยังวิธีการที่ไม่ได้กำหนด Drupal\user\Entity\User::getUid()

มีวิธีรับ uid จากเอนทิตีผู้ใช้โดยไม่ต้องโหลดวัตถุ User แบบเต็มหรือไม่

Jaypan avatar
de flag
หากคุณมีเอนทิตีผู้ใช้ ระบบจะโหลดไว้แล้ว และคุณสามารถรับ ID จากเอนทิตีได้ Drupal 7: `$user->id` Drupal 8+: `$user->id()`
Score:2
ธง de

หากคุณมีเอนทิตีผู้ใช้ ระบบจะโหลดไว้แล้ว และคุณสามารถรับ ID จากเอนทิตีได้

  • ดรูพัล 7

    $user->uid
    
  • Drupal 8 และใหม่กว่า

    $user->id()
    
apaderno avatar
us flag
สิ่งนี้ใช้ได้กับวัตถุที่ส่งคืนจาก `\Drupal::currentUser()` หากรหัสต้องการหลีกเลี่ยงการโหลดวัตถุ User แบบเต็ม และต้องการ ID สำหรับผู้ใช้ที่เข้าสู่ระบบในปัจจุบัน นั่นคือรหัสที่จะใช้ ดูเหมือนจะไม่ใช่กรณี OP เนื่องจากข้อผิดพลาดสำหรับ `Drupal\user\Entity\User` ซึ่งหมายความว่ารหัสพยายามเรียก `getUserId()` บนวัตถุ `Drupal\user\Entity\User` ไม่ใช่วัตถุ `Drupal\Core\Session\AccountProxy` ส่วน _ไม่มีการโหลด User object_ แบบเต็มดูเหมือนจะขัดแย้งกับสิ่งที่โค้ดกำลังทำอยู่

โพสต์คำตอบ

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