0

我目前正在开发一个需要将文件保存到 Drupal 的 Flash 应用程序。我已经使用文件服务将文件保存到 Drupal 站点,但是我无法使用 node.save 服务(上传模块,而不是 CCK 文件字段)将文件附加到节点。

我将使用 node.save 传输的对象在 AS3 中如下所示:

var node:Object;
// all the other required node fields : nid, type, language, uid, name,
// status, title, changed, created, format, taxonomy, picture
node.files = new Array();

var aFile:Array = new Array;
aFile['list']=1;
aFile['weight']=0;
aFile['remove']=0;
aFile['description']="test.txt";

// id = id of the previously saved file
node.files[id] = aFile;

我想有一些字段丢失或类似的东西。

4

2 回答 2

0

也许您的问题与您的aFile阵列有关。要在 AS3 中创建关联数组,Adobe 建议您使用对象:

var aFile:Object = new Object();
aFile['list']=1;
aFile['weight']=0;
aFile['remove']=0;
aFile['description']="test.txt";

// id = id of the previously saved file
node.files[id] = aFile;

来自 Adob​​e 文档:

  • “不要使用 Array 类来创建关联数组(也称为哈希),它是包含命名元素而不是编号元素的数据结构。要创建关联数组,请使用 Object 类。虽然 ActionScript 允许您使用Array 类,您不能将任何 Array 类方法或属性与关联数组一起使用。”
于 2010-08-02T18:55:16.307 回答
0

我发现它实际上只涉及在使用 node_save() 保存之前直接在使用 node_load() 加载的对象中修改数据的模块。其他模块(如 CCK)作用于表单的#post 数据(使用 drupal_execute)。

服务模块需要一个补丁才能处理上传模块(或任何类似的模块)。

您可以按照我在此处打开的票的详细信息http://drupal.org/node/881740

于 2010-08-16T03:43:22.440 回答