我之前在Flex中使用了DTO,它映射到PHP DTO文件。我通过remoteobject(AMFPHP)使用PHP从MySQL数据库中检索信息,该数据库被转换为DTO类型,然后传回Flex以填充Datagrid。
用于填充Datagrid的数据是DataVO的ArrayCollection,如下所示。
Public Function OnResult(event:Object):void{
accountingdata:ArrayCollection = new ArrayCollection(ArrayUtil.toArray(event.result);
....
}
然后我使用绑定用{accountingdata}填充DataGrid 然后,
selectedItem as DataVO
DataGrid上的选定项目填充变量selectedItem,如下所示。
selectedItem = event.target.selectedItem
然后我填充像这样的文本字段:
date_txtfield.text = selectedItem.date
accountno_txtfield.text = selectedItem.accountno
我对此没有任何问题,因为来自服务器端的数据也是DataVO对象。
但是现在我试图用Drupal内容/节点替换我的服务器端PHP脚本,并且我遇到了转换问题。
我不知道将Drupal检索到的数据转换为DataVO格式。 我仍然可以使用ArrayCollection填充Datagrid,但我无法使用invididual属性(如date,accountno等)填充单个文本字段。
由于我对这一切都不熟悉,有人可以提供如何做到这一点的指示(尽可能详细)吗?
答案 0 :(得分:0)
也许您可以尝试在PHP中使用某种适配器层,将Drupal语句转换为您当前支持的DTO。这样,您就不需要在客户端上处理此问题,因为您可能没有服务器上那么多的灵活性,并且可以重新使用大部分Flex / ActionScript代码。