Podio: Проблемы с назначением ссылки для поля приложения Relationship

Я программно создал приложение с полем приложения отношений

$app = new PodioApp($attributes);

После того, как он был успешно создан, я хотел создать поле приложения отношений

$field_id = PodioAppField::create( array (
                                        "type => "app",
                                        "external_id" => "test",
                                        "config" => array (
                                                        "label" => "Test field",
                                                        "settings" => array()
                                                    )
                                          ));

Действительно, поле создается в podio. Теперь я хочу назначить эталонное приложение для этого поля отношений, и мой код выглядит следующим образом:

$settings = array( 
                "apps" => array (
                            array("app_id" => 10036463)
                          )
            );
PodioAppField::update($app->app_id, $field_id, array (
                                                        "label" => "Updated_test_field",
                                                        "settings" => $settings
                                                   ));

Ошибка не отображается ни на экране, ни в файле журнала. Однако, когда я проверяю свой шаблон приложения в своей рабочей области, приложение-ссылка для поля отношения не настроено.

Так что, если бы кто-нибудь мог сказать, что не так с моими настройками, было бы неплохо :)

Спасибо вам всем


person Toky Ralala    schedule 05.11.2014    source источник


Ответы (1)


Параметры конфигурации находятся по адресу: https://developers.podio.com/doc/applications.

Имя настроек - не apps, а referenced_apps, и вы можете сделать это за один раз. Нет причин использовать 3 вызова API, если вы можете создать свое приложение с одним:

$attributes = array(
  "fields" => array(
    array (
      "type => "app",
      "config" => array (
        "label" => "Test field",
        "settings" => array(
          "referenced_apps" => array("app_id" => 10036463)
        )
      )
    )
  )
);
$app = new PodioApp($attributes);

Здесь я пропустил все остальные атрибуты приложения. Я также удалил external_id, поскольку он будет автоматически создан для вас.

person Andreas Haugstrup Pedersen    schedule 05.11.2014
comment
Разве вместо этого настройки не должны быть "settings" => array((array("app_id"=> 10036463))? Я пробовал и этот, и ваш, но referenced_apps по-прежнему не прикреплен к шаблону podio. Может это ошибка API? - person Toky Ralala; 07.11.2014