1 - Agrego un atributo eav a customer_address
$attributesInfo = [
'reference' => [
'label' => 'Reference',
'type' => 'varchar',
'input' => 'text',
'position' => 100,
'visible' => true,
'required' => false,
],
];
foreach ($attributesInfo as $attributeCode => $attributeParams) {
$customerSetup->addAttribute('customer_address', $attributeCode, $attributeParams);
}
2 - Agregué el atributo de extensión en mi módulo
<extension_attributes for="Magento\Quote\Api\Data\AddressInterface">
<attribute code="reference" type="string"/>
</extension_attributes>
En mi requirejs-config.js anulo algún archivo javascript para agregar un campo de referencia
var config = {
"map": {
"*": {
"Magento_Checkout/js/model/shipping-save-processor/default" : "Agr_Checkout/js/shipping-save-processor-default-override",
"Magento_Customer/js/model/customer/address" : "Agr_Checkout/js/model/customer/address",
"Magento_Checkout/js/model/address-converter" : "Agr_Checkout/js/model/address-converter",
"Magento_Checkout/js/model/new-customer-address" : "Agr_Checkout/js/model/new-customer-address"
}
}
3 - Confirmo que el campo de referencia está enviando la dirección
4 - Cuando envío mi información de envío (haga clic en Siguiente) obtengo este error: "Referencia de" Propiedad "no tiene el configurador correspondiente en la clase" Magento \ Quote \ Api \ Data \ AddressInterface ".
Ya lo hago: - Limpiar y vaciar caché de magento - Ejecutar configuración: actualización - Ejecutar configuración: di: compilar
¿Qué estoy haciendo mal?
Respuestas:
La configuración de atributos en un script de configuración o actualización de eav funciona mejor y se agregará automáticamente a los formularios a los que solicite agregarlos.
Este código aquí se agregará a los formularios y no habrá ningún problema al guardar o ir al siguiente paso
fuente
Intenta configurarlo a través de atributos personalizados.
Ejemplo:
fuente
¿Cómo pasa el atributo en la solicitud? puedes consultar la consola del navegador así
Es correcto. Puede eliminar la carpeta var y la carpeta generada var / cache var / page_cache var / view_proceed y generado / .
fuente