1

在安装配置文件的帮助下创建多个字段后,我现在还试图弄清楚如何在安装配置文件中添加允许的文件扩展名。到目前为止,这是我的代码:

'name' => 'attachment',
'type' => 'file',
'settings' => array(
    'allowed_file_extensions' => array('txt pdf'),
),

allowed_file_extensions 只是一个测试,看看它是否有效,但它没有给出致命的 PHP 错误。(** PHP 致命错误:不支持的操作数类型** )

如何在现场添加文件扩展名?

PS:我也尝试将设置放入实例中,这给出了同样的错误。

4

1 回答 1

2

好的,我在过去的三天里遇到了这个问题。现在,在我发布这个问题几个小时后,我解决了这个问题。

对于那些有同样问题或问题的人来说,这是为我解决的问题,正确的方法是添加设置。每个实例的设置可能不同,因此设置用于实例创建而不是字段本身。

这是一个关于它应该如何的示例:

$instance = array(
    'field_name'    => 'file'
    'entity_type'   => 'node',
    'bundle'        => 'article',
    'label'         => 'Attachment',
    'description'   => 'Add an attachment here',
    'required'      => TRUE,
    'settings'      => array(
         'max_filesize'    => '512',
         'file_extensions' => 'zip txt pdf docx'
    ),
);
field_create_instance($instance);

设置字段不是必需的,但我使用的是 foreach,因为我一次生成多个字段和实例,如果您这样做并且您在生成的字段实例中的 1 个具有设置,那么您必须在所有实例中添加设置或检查它是否是否存在。

我希望我的经验可以帮助大家在遇到同样的问题时。

于 2013-10-10T11:10:07.197 回答