我有一个Podio应用程序,它由php API通过网站上的表单填充。
使用Create Item代码段适用于文本字段,货币值等,但我无法解开有关如何设置类别字段的文档。
类别字段"参加",是一个简单的是/否选择。
显示的方法here与Create Item代码段组合时会产生服务器错误,如下所示:
$fields = new PodioItemFieldCollection(array(
new PodioTextItemField(array("external_id" => "title", "values" => $name)),
new PodioTextItemField(array("external_id" => "email", "values" => $email)),
));
$item = new PodioItem(array(
'app' => new PodioApp(intval($app_id)),
'fields' => $fields,
));
pseudo code: if attending = yes, $attending = 1, else $attending = 2 //id's of yes and no in category field
$item->fields['attending']->values = $attending;
$item->save();
我错过了什么?感谢。
答案 0 :(得分:0)
对于那些仍在寻找答案的人:诀窍是使用数组。
在打开Collection之前执行$ atte用的评估,然后简单地进行 将此行添加到 PodioItemFieldCollection 中。
new PodioCategoryItemField(array(
'external_id' => 'attending', 'values' => array($attending))),
所以整个片段看起来像这样
($foo == 'yes') ? $attending = 1: $attending = 2 ; // evaluating $foo for yes
$fields = new PodioItemFieldCollection(array(
new PodioTextItemField(array("external_id" => "title", "values" => $name)),
new PodioTextItemField(array("external_id" => "email", "values" => $email)),
new PodioCategoryItemField(array(
'external_id' => 'attending', 'values' => array($attending))) // must be an array
));
$item = new PodioItem(array(
'app' => new PodioApp(intval($app_id)),
'fields' => $fields,
));
$item->save();
答案 1 :(得分:-1)
您可以在http://podio.github.io/podio-php/fields/#category-field
找到示例如果仍然无法正常工作,请将podio-php置于调试模式,这样您就可以看到正在向Podio发送的数据:http://podio.github.io/podio-php/debug/