mirror of
https://github.com/django-components/django-components.git
synced 2025-08-03 13:58:16 +00:00
Contain all registry logic in helper methods.
This commit is contained in:
parent
ecba6e3ed9
commit
b2726a6832
4 changed files with 22 additions and 8 deletions
|
@ -15,7 +15,18 @@ class ComponentRegistry(object):
|
|||
self._registry[name] = component
|
||||
|
||||
def unregister(self, name):
|
||||
self.get(name)
|
||||
|
||||
del self._registry[name]
|
||||
|
||||
def get(self, name):
|
||||
if name not in self._registry:
|
||||
raise NotRegistered('The component "%s" is not registered' % name)
|
||||
|
||||
del self._registry[name]
|
||||
return self._registry[name]
|
||||
|
||||
def all(self):
|
||||
return self._registry
|
||||
|
||||
def clear(self):
|
||||
self._registry = {}
|
||||
|
|
|
@ -7,7 +7,7 @@ register = template.Library()
|
|||
|
||||
@register.simple_tag(name="component_dependencies")
|
||||
def component_dependencies_tag():
|
||||
unique_component_classes = set(registry._registry.values())
|
||||
unique_component_classes = set(registry.all().values())
|
||||
|
||||
out = []
|
||||
for component_class in unique_component_classes:
|
||||
|
@ -18,6 +18,6 @@ def component_dependencies_tag():
|
|||
|
||||
@register.simple_tag(name="component")
|
||||
def component_tag(name, *args, **kwargs):
|
||||
component_class = registry._registry[name]
|
||||
component_class = registry.get(name)
|
||||
component = component_class()
|
||||
return component.render(*args, **kwargs)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue