trait UncacheableFieldHandlerTrait
Trait encapsulating the logic for uncacheable field handlers.
Hierarchy
- trait \Drupal\views\Plugin\views\field\UncacheableFieldHandlerTrait
1 file declares its use of UncacheableFieldHandlerTrait
- FieldFormButtonTest.php in core/modules/ views/ tests/ modules/ views_test_data/ src/ Plugin/ views/ field/ FieldFormButtonTest.php 
File
- 
              core/modules/ views/ src/ Plugin/ views/ field/ UncacheableFieldHandlerTrait.php, line 10 
Namespace
Drupal\views\Plugin\views\fieldView source
trait UncacheableFieldHandlerTrait {
  
  /**
   * {@inheritdoc}
   *
   * @see \Drupal\views\Plugin\views\Field\FieldHandlerInterface::render()
   */
  public function render(ResultRow $row) {
    return $this->getFieldTokenPlaceholder();
  }
  
  /**
   * {@inheritdoc}
   *
   * @see \Drupal\views\Plugin\views\Field\FieldHandlerInterface::postRender()
   */
  public function postRender(ResultRow $row, $output) {
    $placeholder = $this->getFieldTokenPlaceholder();
    $value = $this->doRender($row);
    $this->last_render = str_replace($placeholder, $value, $output);
    return [
      $placeholder => $value,
    ];
  }
  
  /**
   * {@inheritdoc}
   *
   * @see \Drupal\views\Plugin\views\Field\FieldPluginBase::getFieldTokenPlaceholder()
   */
  abstract protected function getFieldTokenPlaceholder();
  
  /**
   * Actually renders the field markup.
   *
   * @param \Drupal\views\ResultRow $row
   *   A result row.
   *
   * @return string
   *   The field markup.
   */
  protected function doRender(ResultRow $row) {
    return $this->getValue($row);
  }
  
  /**
   * {@inheritdoc}
   *
   * @see \Drupal\views\Plugin\views\Field\FieldHandlerInterface::getValue()
   */
  abstract protected function getValue(ResultRow $row, $field = NULL);
}Members
| Title Sort descending | Modifiers | Object type | Summary | Overrides | 
|---|---|---|---|---|
| UncacheableFieldHandlerTrait::doRender | protected | function | Actually renders the field markup. | |
| UncacheableFieldHandlerTrait::getFieldTokenPlaceholder | abstract protected | function | ||
| UncacheableFieldHandlerTrait::getValue | abstract protected | function | 3 | |
| UncacheableFieldHandlerTrait::postRender | public | function | ||
| UncacheableFieldHandlerTrait::render | public | function | 
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.
