Score:1

Reference private file?

ธง in

I'm making migration plugin which I'm using in first migration and it is creating private file like this:

if ($final_destination) {
  // Create a file entity.
  $file = File::create([
    'uri' => $final_destination,
    'uid' => $uid,
    'status' => FILE_STATUS_PERMANENT,
  ]);

  $uri = $file->getFileUri();

  $stream = new S3fsStream();
  $stream->writeUriToCache($uri);

  if ($stream->waitUntilFileExists($uri)) {
    $file->save();
    return $file->getFileUri();
  }
}

Then, second migration should create media entities, by using those files (with migration lookup plugin).

However, when I run second migration I get error message:

media: field_image.0=You do not have access to the referenced entity file: 46

If file is public then it works, but how can I reference private files? The error is triggered in ReferenceAccessConstraintValidator.php.

  // We check that the current user had access to view any newly added
  // referenced entity.
  if ($check_permission && !$referenced_entity->access('view')) {
    $type = $value->getFieldDefinition()->getSetting('target_type');
    $this->context->addViolation($constraint->message, ['%type' => $type, '%id' => $id]);
  }
br flag
ตรวจสอบให้แน่ใจว่าผู้ใช้ของคุณสามารถเข้าถึงไฟล์ส่วนตัวนั้นได้ มิฉะนั้น คุณจะไม่สามารถอ้างอิงหรือเข้าถึงไฟล์นั้นได้
br flag
ในทางกลับกัน เมื่อฉันย้ายข้อมูล ฉันไม่ต้องสร้างปลั๊กอินเพื่อสร้างสื่อเลย แต่คุณต้องตั้งค่าฟิลด์มีเดียเพื่อบันทึกไฟล์ไปยังไดเร็กทอรีส่วนตัว (แน่นอน) หากคุณมี URL (แม้จะใช้ภายนอกก็ตาม) คุณเพียงแค่ต้องตั้งค่าให้เป็นไฟล์ที่ยื่นและปลั๊กอินที่ให้มาจะดาวน์โหลดให้คุณ - ถ้าฉันจำได้ดีเพราะมันนานมาแล้ว
Score:0
ธง in

พบว่านี่เป็นปัญหาที่ทราบและได้รับการแก้ไขแล้วใน Drupal 9.3 ควรใช้แพตช์เวอร์ชันก่อนหน้า:

https://www.drupal.org/project/drupal/issues/3134470

คำถามนี้เป็นภาษาอื่นๆ:

โพสต์คำตอบ

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