Điểm:0

Làm cách nào để bạn đặt phần mở rộng tệp trong khi tải hình ảnh lên thông qua file_save_data?

lá cờ th

Tôi đang cố gắng tạo một sản phẩm có hình ảnh sản phẩm trên drupal bằng API. Tôi đã tạo một mô-đun tùy chỉnh cho cùng đoạn mã sau để tải hình ảnh của mình lên Drupal:

$path = base64_decode($encodedData['content']);
$data= $this->grabImage($path);
$file = file_save_data($data, null, FileSystemInterface::EXISTS_REPLACE);
        
$id = $file->id();

Tôi đang sử dụng phương pháp drupal file_save_data để tải lên hình ảnh thành công và nó được tải lên thư mục drupal sau:

mystore2/web/trang web/mặc định/tệp

Bây giờ, tôi đang sử dụng cái này $file->id() // nói 53 value trong mảng sản phẩm của tôi để kết nối hình ảnh này với sản phẩm của tôi.

$image['field_picture'] = [[
    "id_mục tiêu" => 53,
    "alt" => 'abcd',
    "chiều rộng"=> 224,
    "chiều cao"=> 225,
    "tiêu đề" => '',
    "loại_mục tiêu" => "tệp"
]];

Thực hiện theo phản hồi tôi nhận được từ API:

> tin nhắn:
> Thực thể không thể xử lý: xác thực không thành công.
> field_picture.0: Chỉ cho phép các tệp có phần mở rộng sau: png gif jpg jpeg.\n

Vì vậy, làm cách nào tôi có thể chuyển phần mở rộng trong file_save_data()? Hoặc làm cách nào tôi có thể thêm hình ảnh này vào sản phẩm của mình?

Tôi đang sử dụng phiên bản Drupal ^9.

Điểm:0
lá cờ cn

Bạn cần chuyển đường dẫn tệp, bao gồm tên và phần mở rộng của nó, dưới dạng $đích tham số:

$file = file_save_data($data, 'public://path/to/file.ext', FileSystemInterface::EXISTS_REPLACE);
sonfd avatar
lá cờ in
Trong đó `path/to/file.ext` là bất cứ thứ gì bạn muốn (mặc dù bạn chắc chắn muốn lưu ý nếu bạn đang sử dụng tùy chọn `FileSystemInterface::EXISTS_REPLACE`).

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.