【发布时间】:2012-09-29 19:04:15
【问题描述】:
我的 XML 视图文件包含(用于通过 XML 导出记录):
<records><?php echo $this->Xml->serialize($records); ?></records>
升级到 2.0 后,我意识到不再有 Xml 助手。 但是 Xml 类本身似乎也不再提供同样强大的方法。 它只包含类似的东西
$Xml = Xml::fromArray($records, array('format' => 'attribute'));
...
<records><?php echo $Xml->asXML(); ?></records>
但这当然会失败,因为它只能“一次转换一条记录”。 如果我将其强制为单个父键,它也会失败,例如
$records = array('records'=>$records);
首先...
不知道如何让 XML 导出的东西再次工作。 特别是,看起来,2.0 XML 类(http://book.cakephp.org/2.0/en/core-utility-libraries/xml.html#Xml)的预期输入与模型返回的完全不同(并且可能必须以某种方式进行转换)。 旧结构(并且很喜欢模型):
$records = array(
array('Project'=>array('field'=>'value', ...)),
array('Project'=>array('field'=>'value', ...)),
);
新结构
$records = array(
'projects' => array(
'project' => array(
array(
'id' => 1, 'title' => 'Project 1',
'industry' => array('id' => 1, 'name' => Industry 1')
),
array(
'id' => 2, 'title' => 'Project 2',
'industry' => array('id' => 2, 'name' => Industry 2')
)
)
)
);
与模型提供给我们的完全不兼容,或者看起来是这样。
【问题讨论】:
-
您是否收到过对此的答复或进一步澄清?我自己也在为此苦苦挣扎,对 CakePHP 有点陌生,我没有取得太大进展。
标签: xml cakephp-2.0