function views_post_update_views_data_table_dependencies

Include views data table provider in views dependencies.

File

core/modules/views/views.post_update.php, line 301

Code

function views_post_update_views_data_table_dependencies(&$sandbox = NULL) {
    $storage = \Drupal::entityTypeManager()->getStorage('view');
    if (!isset($sandbox['views'])) {
        $sandbox['views'] = $storage->getQuery()
            ->accessCheck(FALSE)
            ->execute();
        $sandbox['count'] = count($sandbox['views']);
    }
    // Process 10 views at a time.
    $views = $storage->loadMultiple(array_splice($sandbox['views'], 0, 10));
    foreach ($views as $view) {
        $original_dependencies = $view->getDependencies();
        // Only re-save if dependencies have changed.
        if ($view->calculateDependencies()
            ->getDependencies() !== $original_dependencies) {
            // We can trust the data because we've already recalculated the
            // dependencies.
            $view->trustData();
            $view->save();
        }
    }
    $sandbox['#finished'] = empty($sandbox['views']) ? 1 : ($sandbox['count'] - count($sandbox['views'])) / $sandbox['count'];
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.