Magento 1.9, вновь созданный атрибут клиента не спасет - PullRequest
0 голосов
/ 01 ноября 2018

Я работаю над созданием нового атрибута клиента. Я создал пользовательский атрибут, используя скрипт установки обновления. Скрипт успешно запускается и создает поле. Я вижу поле в админке Magento, но не могу сохранить запись.

<?php
$installer = $this;
$installer->startSetup();

$installer->addAttribute("customer", "verifiedcustomer",  array(
    "type"     => "varchar",
    "backend"  => "",
    "label"    => "Verified Customer Completion",
    "input"    => "text",
    "source"   => "",
    "visible"  => true,
    "required" => false,
    "default" => "",
    "frontend" => "",
    "unique"     => false,
    "note"       => ""

	));

$attribute   = Mage::getSingleton("eav/config")->getAttribute("customer", "verifiedcustomer");
$used_in_forms=array();
$used_in_forms[]="adminhtml_customer";
$attribute->setData("used_in_forms", $used_in_forms)
    ->setData("is_used_for_customer_segment", true)
    ->setData("is_system", 0)
    ->setData("is_user_defined", 1)
    ->setData("is_visible", 1)
    ->setData("sort_order", 200);
$attribute->save();

$installer->endSetup();

Другие значения пользовательских атрибутов сохраняются правильно от администратора Magento, но этот вновь созданный «проверенный» клиент не сохраняет.

Ниже приведен HTML-код, сгенерированный администратором Magento ... 'verifiedcustomer' Custom Field

<tr>
  <td class="label"><label for="_accountverifiedcustomer">Verified Customer Completion</label></td>
  <td class="value">
    <input id="_accountverifiedcustomer" name="account[verifiedcustomer]" value="" class=" input-text" type="text"> </td>
</tr>

Я ищу любые идеи и ценю ответы.

1 Ответ

0 голосов
/ 02 ноября 2018

Итак, по-видимому, Magento не любит пользовательский атрибут customer, заканчивающийся словом «customer». Я изменил переменную для атрибута на verifiedprogram вместо verifiedcustomer, и теперь атрибут правильно сохраняется.

Финальный код ниже ...

<?php

$installer = $this;
$installer->startSetup();

$installer->addAttribute("customer", "verifiedprogram",  array(
    "type"     => "varchar",
    "backend"  => "",
    "label"    => "Verified Customer Completion",
    "input"    => "text",
    "source"   => "",
    "visible"  => true,
    "required" => false,
    "default"  => "",
    "frontend" => "",
    "unique"   => false,
    "note"     => ""

	));

$attribute   = Mage::getSingleton("eav/config")->getAttribute("customer", "verifiedprogram");
$used_in_forms=array();
$used_in_forms[]="adminhtml_customer";
$attribute->setData("used_in_forms", $used_in_forms)
    ->setData("is_used_for_customer_segment", true)
    ->setData("is_system", 0)
    ->setData("is_user_defined", 1)
    ->setData("is_visible", 1)
    ->setData("sort_order", 200);
$attribute->save();

$installer->endSetup();
...