fix: GroupBySource not updated on template edit

This commit is contained in:
relikd
2022-07-23 19:09:15 +02:00
parent fb8321744e
commit f13bd3dfc6
2 changed files with 12 additions and 3 deletions

View File

@@ -1,4 +1,4 @@
from lektor.db import Page # isinstance
from lektor.assets import File, Directory # isinstance
from lektor.pluginsystem import Plugin # subclass
from typing import TYPE_CHECKING, Iterator, Any
from .backref import GroupByRef, VGroups
@@ -27,8 +27,11 @@ class GroupByPlugin(Plugin):
) -> None:
# before-build may be called before before-build-all (issue #1017)
# make sure it is always evaluated first
if isinstance(source, Page):
self._init_once(builder)
if isinstance(source, (File, Directory)):
return
groupby = self._init_once(builder)
if groupby.isNew and isinstance(source, GroupBySource):
self.has_changes = True
def on_after_build(self, build_state: 'BuildState', **extra: Any) -> None:
if build_state.updated_artifacts: