Magento2 REST อัปเดตแอตทริบิวต์ที่กำหนดเอง


10

ฉันจะอัปเดตแอตทริบิวต์ที่กำหนดเองเช่นคำอธิบายได้อย่างไร รหัสต่อไปนี้อัปเดตราคาและชื่อผลิตภัณฑ์อย่างถูกต้อง แต่ไม่ใช่แอตทริบิวต์ที่กำหนดเอง (ไม่เปลี่ยนแปลง) ผลิตภัณฑ์ใหม่ถูกสร้างขึ้นอย่างถูกต้องด้วยคุณสมบัติที่กำหนดเองปัญหาคือในขณะที่การปรับปรุง

magento2 REST อัปเดตแอตทริบิวต์ที่กำหนดเอง

magento2 REST อัปเดตแอตทริบิวต์ที่กำหนดเอง


สวัสดีครับในกรณีของคุณฉันคิดว่าคุณต้องทำอีกครั้ง: php bin / magento อัปเกรด
MrTo-Kane

สวัสดีพวกฉันคิดว่าคุณให้รหัสหรือการกำหนดค่าแอตทริบิวต์สำหรับ custom_attributes ให้เราตรวจสอบอีกครั้ง
MrTo-Kane

คุณตรวจสอบคำตอบหรือไม่? ต้องการความคิดเห็นของคุณ
chirag

คำตอบ:


9

ในการสร้างผลิตภัณฑ์เราสามารถใช้:

  • POST : / V1 / ผลิตภัณฑ์

สำหรับการอัพเดต:

  • วาง : / V1 / ผลิตภัณฑ์ / {sku}

ในกรณีของคุณรหัสของคุณควรเป็น:

$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' ],
            ]
    ];

ร่างกาย JSON:

 {
  "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"
      }
    ]
  }
}

มีคำตอบอยู่ที่นี่: https://magento.stackexchange.com/a/135607/33057


สวัสดี @Koa คุณต้องจัดรูปแบบอาร์เรย์เป็นสตริง json เพราะเขาใช้ REST และเครื่องมือ REST
MrTo-Kane

@ MagentoOdoo.com ขอบคุณ! ฉันปรับปรุงคำตอบของฉัน
Khao TruongDinh

@Khoa TruongDinh วิธีเพิ่มป้ายกำกับแอตทริบิวต์ที่เลือกใน API ส่วนที่เหลือของผลิตภัณฑ์ เช่น ['attribute_code' => 'description', 'value' => 'ทดสอบคำอธิบาย', 'label' => 'คำอธิบาย'],
Kirti Nariya


@KhoaTruongDinh วิธีส่งป้ายกำกับใน / V1 / ผลิตภัณฑ์ / {sku} 'attribute_code' => 'สี', 'ค่า' => '54', 'ฉลาก' => 'สีน้ำเงิน' แจ้งให้เราทราบหากคุณมีความคิด ความช่วยเหลือของคุณจะได้รับการชื่นชม
Kirti Nariya

3

ลองส่งแอตทริบิวต์ที่กำหนดเองของคุณภายในอาเรย์เช่น:

'custom_attributes' => array(
     '0' => array(
          'attribute_code' => 'my_custom_attribute_code',
          'value' => 'my_custom_attribute_value'
      )
      ...
)

วิธีส่งป้ายกำกับใน / V1 / ผลิตภัณฑ์ / {sku} 'attribute_code' => 'color', 'value' => '54', 'label' => 'Blue' แจ้งให้เราทราบหากคุณมีความคิด ความช่วยเหลือของคุณจะได้รับการชื่นชม
Kirti Nariya

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.