Commit 2e9711ae authored by ibuler's avatar ibuler

[Update] 修改nodes

parent ef73469d
...@@ -211,7 +211,8 @@ class AssetsAmountMixin: ...@@ -211,7 +211,8 @@ class AssetsAmountMixin:
cached = cache.get(cache_key) cached = cache.get(cache_key)
if cached is not None: if cached is not None:
return cached return cached
assets_amount = self.get_all_assets().count() assets_amount = self.get_all_assets().only('id').count()
self.assets_amount = assets_amount
return assets_amount return assets_amount
@assets_amount.setter @assets_amount.setter
...@@ -328,14 +329,8 @@ class Node(OrgModelMixin, FamilyMixin, FullValueMixin, AssetsAmountMixin): ...@@ -328,14 +329,8 @@ class Node(OrgModelMixin, FamilyMixin, FullValueMixin, AssetsAmountMixin):
def get_all_assets(self): def get_all_assets(self):
from .asset import Asset from .asset import Asset
pattern = r'^{0}$|^{0}:'.format(self.key) children = self.get_all_children()
args = [] assets = Asset.objects.filter(nodes__in=children).distinct()
kwargs = {}
if self.is_root():
args.append(Q(nodes__key__regex=pattern) | Q(nodes=None))
else:
kwargs['nodes__key__regex'] = pattern
assets = Asset.objects.filter(*args, **kwargs).distinct()
return assets return assets
def get_all_valid_assets(self): def get_all_valid_assets(self):
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment