Поле пользовательских атрибутов не сохраняется в БД при оформлении одной страницы Magento 1.6? - PullRequest
0 голосов
/ 29 декабря 2011

Кто-нибудь может помочь с этим?

Я создал новый модуль с 2-мя настраиваемыми полями, кажется, все работает нормально. Примите, что одно из полей не будет сохранено в БД в процессе оформления одной страницы?

Я могу вводить данные через страницу регистрации (register.phtml) и редактировать данные через страницу редактирования учетной записи (edit.phtml), все это сохраняется в БД.

Одним из полей является поле выбора, которое получает опцию из модели / объекта. Это поле сохраняется нормально, оба поля имеют одинаковые записи в файле config.xml.

Я пробовал разные варианты ввода в billing.phtml

    <?php if(!$this->isCustomerLoggedIn()): ?>
    <li>    
    <label for="billing:childname" class="required"><em>*</em>
    <?php echo   $this->__('Childs Name') ?>
    </label>
    <div class="input-box">
    <input type="text" name="billing[childname]" id="billing:childname" 
    value="<?php echo $this->htmlEscape($this->getQuote()->getCustomerChildname()) ?>" 
    title="<?php echo $this->__('Childs Name') ?>" 
    class="input-text validate-text required-entry" />
    </div> 
    </li>

также: value = "htmlEscape ($ this-> getCustomer () -> getChildname ())?>"

Но, похоже, ничто из того, что я пытаюсь сделать, не сработало.

Большое спасибо

1 Ответ

1 голос
/ 15 ноября 2013

Чтобы сохранить ваш атрибут 'childname' в БД, нам нужно сначала сохранить это значение в таблице 'sales_flat_quote'.

Пожалуйста, следуйте инструкциям, чтобы получить поле для сохранения в БД.

Step1: Добавьте новый столбец в sales_flat_quote, выполнив запрос ниже.

ALTER TABLE  `sales_flat_quote` ADD  `customer_childname` INT NOT NULL

Step2: Теперь перейдите в модуль config.xml file and pasteниже fieldsets код в глобальном блоке, если у вас нет собственного модуля, вставьте его в любой другой модуль.

<global>
     //.....................
     <fieldsets>
       <checkout_onepage_quote>
         <customer_childname>
             <to_customer>childname</to_customer>
         </customer_childname>
       </checkout_onepage_quote>
        <customer_account>
            <childname>
                <to_quote>customer_childname</to_quote>
            </childname>
        </customer_account>     
      </fieldsets>
      //......................
</global>

Теперь проверьте его:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...