comparison piecrust/sources/posts.py @ 977:84fc72a17f7a

sources: Changes in related contents management. - Remove `getParentGroup` method, use related contents instead. - Return only a single group when asked for the parent.
author Ludovic Chabant <ludovic@chabant.com>
date Tue, 17 Oct 2017 01:11:54 -0700
parents b61dd60aff36
children d57fff79acc1
comparison
equal deleted inserted replaced
976:b9374b3682f0 977:84fc72a17f7a
3 import re 3 import re
4 import logging 4 import logging
5 import datetime 5 import datetime
6 from piecrust import osutil 6 from piecrust import osutil
7 from piecrust.routing import RouteParameter 7 from piecrust.routing import RouteParameter
8 from piecrust.sources.base import REL_ASSETS, ContentItem 8 from piecrust.sources.base import REL_PARENT_GROUP, REL_ASSETS, ContentItem
9 from piecrust.sources.fs import ( 9 from piecrust.sources.fs import (
10 FSContentSource, InvalidFileSystemEndpointError) 10 FSContentSource, InvalidFileSystemEndpointError)
11 from piecrust.sources.interfaces import ( 11 from piecrust.sources.interfaces import (
12 IPreparingSource, IInteractiveSource, InteractiveField) 12 IPreparingSource, IInteractiveSource, InteractiveField)
13 from piecrust.sources.mixins import SimpleAssetsSubDirMixin 13 from piecrust.sources.mixins import SimpleAssetsSubDirMixin
37 return self.__class__.PATH_FORMAT 37 return self.__class__.PATH_FORMAT
38 38
39 def _finalizeContent(self, groups): 39 def _finalizeContent(self, groups):
40 SimpleAssetsSubDirMixin._removeAssetGroups(self, groups) 40 SimpleAssetsSubDirMixin._removeAssetGroups(self, groups)
41 41
42 def getParentGroup(self, item):
43 return None
44
45 def getRelatedContents(self, item, relationship): 42 def getRelatedContents(self, item, relationship):
43 if relationship == REL_PARENT_GROUP:
44 # Logically speaking, all posts are always flattened.
45 return None
46
46 if relationship == REL_ASSETS: 47 if relationship == REL_ASSETS:
47 return SimpleAssetsSubDirMixin._getRelatedAssetsContents( 48 return SimpleAssetsSubDirMixin._getRelatedAssetsContents(
48 self, item) 49 self, item)
50
49 return FSContentSource.getRelatedContents(self, item, relationship) 51 return FSContentSource.getRelatedContents(self, item, relationship)
50 52
51 def findGroup(self, spec): 53 def findGroup(self, spec):
52 return None 54 return None
53 55