Drupal 7 Drupal 7,自定义表单中文件字段的默认值

Drupal 7 Drupal 7,自定义表单中文件字段的默认值,drupal-7,drupal-fapi,Drupal 7,Drupal Fapi,我创建了一个公式,用户可以使用文件字段上传图像。在另一个公式中,用户可以更改之前上传的图像 到目前为止,我能够让用户上传一张新图片,或者让字段清空,而现有的图片保留下来。我的问题是,我如何以一种好的方式向用户显示他之前与字段一起上传的文件?设置一个#default_值(@下面的代码)对我没有任何作用 //$smallimage = fid of image $form['smallimage'] = array( '#type' => 'file', '#title' =>

我创建了一个公式,用户可以使用文件字段上传图像。在另一个公式中,用户可以更改之前上传的图像

到目前为止,我能够让用户上传一张新图片,或者让字段清空,而现有的图片保留下来。我的问题是,我如何以一种好的方式向用户显示他之前与字段一起上传的文件?设置一个#default_值(@下面的代码)对我没有任何作用

//$smallimage = fid of image
$form['smallimage'] = array(
  '#type' => 'file',
  '#title' => t('Image'),
  '#default_value' => $smallimage,
  '#description' => t('Upload a file, allowed extensions: jpg, jpeg, png, gif'),
);
编辑: 切换回托管文件。我没有可以绑定文件/图像的类型,因此我将它们绑定到第一个节点和第一个用户。不是一个干净的解决方案,但它是有效的

有没有人在不切换到托管_文件的情况下找到解决方案/解决方法

提前感谢您

在Drupal FAPI上,“默认值”不是类型“file”的有效属性,如果您想使用属性“默认值”,那么您可以使用

'#type'         => 'managed_file'
你的代码应该是这样的

$form['file'] = array( 
    '#title'        => t('Upload image'),
    '#type'         => 'managed_file',
    '#description'  => t('Images must be one of jpg, bmp, gif or png formats.'),
    '#default_value' => $fid,  //here you need to provide the file id (get it from database or $file_obj->fid).
    '#upload_location' => 'public://'
);