2017-01-25 5 views
0

Невозможно добавить блок экспресс-детализации на страницу. Когда вы перетаскиваете блок, он просто показывает синюю линию сверху. Для выбора записи, которую вы хотите, никогда не появляется. Однако добавление блока списка отлично работает. Обновлено до 5.8.1, надеясь, что это решит проблему, но не повезло. Удаленные и повторно добавленные экспресс-объекты и т. Д., Безрезультатно.Блок экспресс-форм не может быть добавлен на страницу v5.8

Я обнаружил, что загрузка блока не удалась, но не может определить причину сбоя. Ошибка с ошибкой «Вызов функции-члена getID() на null». на строке 41 с getEntity() -> getID()?> " Итак, кажется, что выражение $ expressAttributes содержит нулевое значение, однако число кодов ($ expessAttributes) действительно создает (1). Я предполагаю, что у меня что-то отсутствует или неверно в базе данных, но я не могу найти, из какой таблицы это извлекается или чего не хватает. Предыдущее раскрывающееся меню заполнено с помощью правильных выражений и описаний выраженного объекта. Его трудно отлаживать, потому что похоже, что он использует ajax и я с трудом получаю, чтобы увидеть какие-либо ошибки на всех. Благодаря

</div> 
<div class="form-group" data-container="express-entry-custom-attribute"> 
    <?php echo $form->label('akID', t('Express Entry Attribute'))?> 
    <?php if (count($expressAttributes)) { ?> 
    <select name="exEntryAttributeKeyHandle" class="form-control"> 
     <option value=""><?php echo t('** Select Attribute')?></option> 
     <?php foreach($expressAttributes as $ak) { 
      $settings = $ak->getAttributeKeySettings(); 
      ?> 
      <option data-entity-id="<?php echo $settings->getEntity()->getID()?>" <?php if ($ak->getAttributeKeyHandle() == $exEntryAttributeKeyHandle) { ?>selected="selected" <?php } ?> value="<?php echo $ak->getAttributeKeyHandle()?>"><?php echo $ak->getAttributeKeyDisplayName()?></option> 
     <?php } ?> 
    </select> 
    <?php } else { ?> 
     <p><?php echo t('There are no express entity page attributes defined.')?></p> 
    <?php } ?> 
</div> 

<div class="form-group"> 
    <?php echo $form->label('exFormID', t('Display Data in Entity Form'))?> 
    <div data-container="express-entry-detail-form"> 

ответ

0
$settings = $ak->getAttributeKeySettings(); 
$settings->getEntity()->getID(); 

Вы звоните GetEntity(), которая является функцией класса Экспресс на настройки класса атрибута. Вы ш ould вызывать метод getEntity() для объекта Express, из которого вы использовали атрибуты. Я не вижу объект Express в вашем коде.