Magento2 REST Benutzerdefinierte Attribute aktualisieren

10

Wie kann ich die benutzerdefinierten Attribute wie die Beschreibung aktualisieren? Mit dem folgenden Code werden Preis und Produktname ordnungsgemäß aktualisiert, jedoch keine benutzerdefinierten Attribute (unverändert). Das neue Produkt wird ordnungsgemäß mit benutzerdefinierten Attributen erstellt. Das Problem liegt beim Aktualisieren.

magento2 REST Benutzerdefinierte Attribute aktualisieren

magento2 REST Benutzerdefinierte Attribute aktualisieren

user47734
quelle
Hallo Leute, in deinem Fall denke ich, dass du es noch einmal tun musst: PHP Bin / Magento Upgrade
MrTo-Kane
Hallo Leute, ich denke du gibst uns den Code oder die Konfiguration des Attributs für custom_attributes. Um das nochmal zu überprüfen.
MrTo-Kane
Hast du eine Antwort überprüft? brauche deine Kommentare.
Chirag

Antworten:

9

Um ein Produkt zu erstellen, können wir verwenden:

  • POST : / V1 / Produkte

Zur Aktualisierung:

  • PUT : / V1 / products / {sku}

In Ihrem Fall sollte Ihr Code sein:

$productData = [
        'attribute_set_id'  => 4,
        "type_id": "simple",
        "sku": "test-SKU",
        "name": "Test",
        "price": 100,
        "status": 1,
        'custom_attributes' => [
                ['attribute_code' => 'description', 'value' => 'Test Description' ],
                ['attribute_code' => 'short_description', 'value' => 'Test Short Description' ],
            ]
    ];

Der JSON-Body:

 {
  "product": {
    "sku": "test-SKU",
    "name": "Test",
    "attribute_set_id": 4,
    "price": 100,
    "status": 1,
    "custom_attributes": [
      {
        "attribute_code": "description",
        "value": "Test Description"
      },
      {
        "attribute_code": "short_description",
        "value": "Test Short Description"
      }
    ]
  }
}

Hier gibt es eine Antwort: /magento//a/135607/33057

Khoa TruongDinh
quelle
Hallo, @Khoa, du musst das Array in einen JSON-String formatieren, da er REST und das REST-Tool verwendet hat.
MrTo-Kane
@ MagentoOdoo.com Danke! Ich habe meine Antwort aktualisiert.
Khoa TruongDinh
@Khoa TruongDinh Hinzufügen einer Bezeichnung für ausgewählte Attribute in der Produktrest-API. Wie ['attribute_code' => 'description', 'value' => 'Test Description', 'label' => 'Description'],
Kirti Nariya
@KhoaTruongDinh Übergeben des Etiketts in / V1 / products / {sku} 'attribute_code' => 'color', 'value' => '54', 'label' => 'Blue' Lassen Sie mich wissen, wenn Sie eine Idee haben. Ihre Hilfe wäre dankbar.
Kirti Nariya
2

Versuchen Sie, Ihre benutzerdefinierten Attribute innerhalb eines Arrays wie folgt zu übergeben:

'custom_attributes' => array(
     '0' => array(
          'attribute_code' => 'my_custom_attribute_code',
          'value' => 'my_custom_attribute_value'
      )
      ...
)
Chirag
quelle
So übergeben Sie das Label in / V1 / products / {sku} 'attribute_code' => 'color', 'value' => '54', 'label' => 'Blue' Lassen Sie mich wissen, wenn Sie eine Idee haben. Ihre Hilfe wäre dankbar.
Kirti Nariya