访问brick控制器中的可编辑变量

时间:2017-10-05 17:33:50

标签: php pimcore pimcore-v5

我想在我的brick控制器中使用我的可编辑值。我怎么能这样做?

view.html.php

1 2 1 5 6
1 4 1 4
3 4

控制器

<?php
/**
 * @var \Pimcore\Templating\PhpEngine $this
 * @var \Pimcore\Templating\PhpEngine $view
 * @var \Pimcore\Templating\GlobalVariables $app
 */
?>    
<?php echo $this->numeric("parentId"); ?>

如何在控制器中访问数字变量“parentId”?我已尝试使用注入的Info对象的可能方法。但似乎没有任何效果。

在官方网站上也没有任何记录。

我正在使用pimcore v.5。

1 个答案:

答案 0 :(得分:2)

编辑:这是一个比我最初发布的更好,更简单的方法:

$field = $this->getDocumentTag($info->getDocument(), 'numeric', 'parentId');

我要离开这里,以防有人想了解这些名字的构建方式:

$view = $info->getView();
$document = $view->get('document');

/** @var \Pimcore\Document\Tag\NamingStrategy\NestedNamingStrategy $strategy */
$strategy = $this->container->get('pimcore.document.tag.naming.strategy');

$brickName = $info->getTag()->getName();
$index = $info->index + 1;
$editableName = 'parentId';
$brickType = $this->id;

$elementId = $strategy->buildChildElementTagName($editableName, $brickType, [$brickName], $index);
$element = $document->getElement($elementId);
$editableValue = $element->number;