首页 > 解决方案 > Drupal 8/9 模块发布后没有刷新表单数据

问题描述

我有一个运行良好的 D8 模块。但我有一个问题。传感器数据存储在数据库中。在 D8 网站中,缓存被禁用,但所选数据不会更新。如果我使用“drush cr”则可以,但下一个选定的数据不会更新。可能是什么问题?代码很快:

#
# form for SQL SELECT
#
function buildForm()
//...
$form['date_from'] = [ '#type' => 'datetime', ... ];
$form['date_to'] = ...
$form['#cache'] = ['max-age' => 0];
/// ...

所以,我选择一个 date_from 和 date_to 并发布它就可以了。我回去更改 date_from、date_to 并发布它,然后它仍然保持前一个日期!在“drush cr”之后它再次工作......等等

它没有效果(settings.php): $settings['rebuild_access'] = TRUE;

谢谢,G。

标签: formspostdrupalmodule

解决方案


我找到了:如何在 Drupal 8 中以编程方式清除缓存?

两者都有效。:)

在函数 buildForm() 中:

drupal_flush_all_caches();
// or
\Drupal::service("router.builder")->rebuild();

推荐阅读