saburo

DataAPIのカスタムフィールドのデータ更新について

0
こんにちは。
いつも参考にさせて頂いております。

Data API v2でのカスタムフィールドのデータの更新についてご相談いたします。

下記のjavascriptによりカスタムフィールド「c_field1」の更新を行おうとしているのですが、500エラーで「Can't use string () as an ARRAY ref while "strict refs" in use at /addons/Commercial.pack/lib/CustomFields/DataAPI.pm line 37.
」とのメッセージが表示されます。

更新する値の形式に何か問題があるかと推測しますが、なかなか原因をつかめません。

この解決策についてご教授いただけませんでしょうか。
よろしくお願いいたします。

-------
var
_entryData = {
'customFields' : "{ basename=>'c_field1', value=>'カスタムフィールド1を更新' }",
'status' : 'Publish'
};

api.updateEntry(_blog_id, _id, _entryData, function(response) {
if (response.error) {
//NG
} else {
//OK
}
});
-------

返信(5)

| 返信する
  • >saburoさん
    こんにちは。

    カスタムフィールドのデータの形式が正しくありません。
    JavaScript SDKを使う場合、「basenameとvalueからなるオブジェクトの配列」を渡す必要があります。

    挙げられた例だと、_entryDataの部分を以下のように変えれば良いはずです。

    _entryData = {
        'customFields' : [
            { basename: 'c_field1', value: 'カスタムフィールド1を更新' }
        ],
        'status' : 'Publish'
    };
    
  • >壱さま

    早速のご返信ありがとうございます。

    オブジェクトの配列をご指摘の形式に書き換えたところ、updateされました。
    的確なご教示に感謝いたします。

    私のような初心者にとって、DataAPIのドキュメント類は必ずしも豊富とはいえず、試行錯誤を通じて習得しています。
    今後ともよろしくお願いします。

  • >壱さま

    早速のご返信ありがとうございます。

    オブジェクトの配列をご指摘の形式に書き換えたところ、updateされました。
    的確なご教示に感謝いたします。

    私のような初心者にとって、DataAPIのドキュメント類は必ずしも豊富とはいえず、試行錯誤を通じて習得しています。
    今後ともよろしくお願いします。

  • 返信するとテンプレートエラーとなってしまいます。
    何か問題がございますでしょうか。

  • >壱さま

    早速のご返信ありがとうございます。

    オブジェクトの配列をご指摘の形式に書き換えたところ、updateされました。
    的確なご教示に感謝いたします。

    私のような初心者にとって、DataAPIのドキュメント類は必ずしも豊富とはいえず、試行錯誤を通じて習得しています。
    今後ともよろしくお願いします。

返信する


カテゴリグループ

フォーラムカテゴリー

21 76

最新のトピック: 公開終了日の取り消し (2013年10月18日 gsk)

228 693

最新のトピック: AssetImageEditorのエラーについて (2015年6月11日 ANDY K. YAMAKITA)

154 454

最新のトピック: MT6.1 のフォルダ管理について (2015年4月 7日 yokota)

341 989

最新のトピック: 管理画面にはいれなくなってしまいました。 (2015年6月 3日 yosityo)

OpenID対応しています OpenIDについて