5

埋め込み画像のリストを含む項目エンドポイントがあります。スキームは次のようになります。

_schema = {
    'name': required_string,  # group name
    'description': {
        'type': 'string',
        'maxlength': 140,
    },
    'images': {
        'type': 'list',
        'scheme': {
            'type': 'objectid',
            'data_relation': {
                'resource': 'images',
                'embeddable': True,
                'field': '_id',
            }
        },
    }
}

だから私は埋め込みオブジェクトを取得するために項目エンドポイントにリクエストをしようとしています

/items/549ae47f4fb9041305403292?embedded={"画像":1}

しかし、埋め込まれた画像の代わりに、画像の _ids のリストを持つ通常のオブジェクトだけを受け取ります。

オブジェクトの例を次に示します。

{
    "_updated": "Wed, 24 Dec 2014 16:06:23 GMT",
    "name": "New Item",
    "images": [
        "549ae47f4fb904130540328b",
        "549ae47f4fb904130540328e",
        "549ae47f4fb9041305403291"
    ],
    "_created": "Wed, 24 Dec 2014 16:06:23 GMT",
    "_id": "549ae47f4fb9041305403292",
    "_etag": "949e3b731823bb2c08682ba4b6696b86856ef941",
    "description": "The best item ever"
}

リスト内の画像 ID をオブジェクト ID に変換しようとしましたが、役に立ちません。うまくいかない理由はありますか?ありがとう

4

1 に答える 1

6

スキーマ定義が正しくありません。リストを定義するときはscheme次のように置き換えます。schemaimages

_schema = {
    'name': required_string,  # group name
    'description': {
        'type': 'string',
        'maxlength': 140,
    },
    'images': {
        'type': 'list',
        'schema': {                 # this was 'scheme' in your def
            'type': 'objectid',
            'data_relation': {
                'resource': 'images',
                'embeddable': True,
                'field': '_id',
            }
        },
    }
}

その後、画像のリストが適切に埋め込まれます。

于 2015-01-03T09:10:39.027 に答える