ฉันได้ติดตามเอกสาร Form API อย่างเป็นทางการแล้ว แต่รหัสนี้ใช้ไม่ได้กับ Drupal 8:
public function buildForm(array $form, FormStateInterface $form_state) {
$form['upload'] = array(
'#title' => t('Upload Images'),
'#type' => 'managed_file',
'#upload_location' => 'public://image_example_images/',
'#element_validate' => array('file_generic_settings_max_filesize'),
);
return $form;
}
private function file_generic_settings_max_filesize($element, &$form_state) {
form_error($element, 'This is an error.');
}
ฉันพยายาม remplace form_error () โดย $ form_state-> setErrorByName () แต่มีปัญหาเดียวกันไฟล์ถูกอัพโหลดและการตรวจสอบไม่ได้ถูกเรียก
คุณมีทางออกให้ไหม? เอกสารของ #element_validate ล้าสมัยหรือไม่
วัตถุประสงค์ของฉัน: อัปโหลดภาพจำนวนมากใช้การตรวจสอบความถูกต้องที่กำหนดเองและแทรกภาพขนาดย่อทั้งหมดภายใน a ที่<div class="preview"></div>
มีฟิลด์สำหรับตั้งชื่อแต่ละภาพ
ตัวอย่าง: (หลังจากอัปโหลดแสดงภาพขนาดย่อและฟิลด์ชื่อเพื่อตั้งชื่อทุกภาพ)
อื่นหลังจากอัปโหลดเพื่อแสดงภาพย่อและฟิลด์อื่น ๆ (ชื่อและคำอธิบาย) สำหรับแต่ละภาพฉันต้องใช้ #value_callback, #process, #attached (จัดการฟิลด์ / แสดงด้วย js หลังจากอัปโหลด) หรือตัวเลือกอื่นโปรด?
ขอบคุณ