Optimisation d'accès à la base de données
This commit is contained in:
		@@ -1039,17 +1039,13 @@ class Event(models.Model):
 | 
			
		||||
        if self.other_versions is None:
 | 
			
		||||
            return []
 | 
			
		||||
        else:
 | 
			
		||||
            return Event.objects.filter(
 | 
			
		||||
                other_versions=self.other_versions
 | 
			
		||||
            ).filter(~Q(status=Event.STATUS.TRASH)).exclude(pk=self.pk)
 | 
			
		||||
            return [e for e in self.other_versions.get_duplicated() if e.pk != self.pk and e.status != Event.STATUS.TRASH]
 | 
			
		||||
 | 
			
		||||
    def get_other_versions(self):
 | 
			
		||||
        if self.other_versions is None:
 | 
			
		||||
            return []
 | 
			
		||||
        else:
 | 
			
		||||
            return Event.objects.filter(
 | 
			
		||||
                other_versions=self.other_versions
 | 
			
		||||
            ).exclude(pk=self.pk)
 | 
			
		||||
            return [e for e in self.other_versions.get_duplicated() if e.pk != self.pk]
 | 
			
		||||
 | 
			
		||||
    def masked(self):
 | 
			
		||||
        return self.other_versions and self.other_versions.representative != self
 | 
			
		||||
 
 | 
			
		||||
@@ -86,7 +86,7 @@
 | 
			
		||||
        </article>
 | 
			
		||||
        {% if event.other_versions %}
 | 
			
		||||
        {% with poss_dup=event.get_other_versions|only_allowed:user.is_authenticated %}
 | 
			
		||||
        {% if poss_dup.count > 0 %}
 | 
			
		||||
        {% if poss_dup|length > 0 %}
 | 
			
		||||
        <article id="liste-dupliques">
 | 
			
		||||
            <header>
 | 
			
		||||
                {% if event.other_versions.representative %}
 | 
			
		||||
 
 | 
			
		||||
@@ -20,7 +20,7 @@
 | 
			
		||||
        </p>
 | 
			
		||||
        {% if event.other_versions %}
 | 
			
		||||
        {% with poss_dup=event.get_other_not_trash_versions|only_allowed:user.is_authenticated %}
 | 
			
		||||
        {% if poss_dup.count > 0 %}
 | 
			
		||||
        {% if poss_dup|length > 0 %}
 | 
			
		||||
        <p class="remarque">
 | 
			
		||||
            {% if event.other_versions.representative %}
 | 
			
		||||
                    cet événement existe <a href="{% if user.is_authenticated %}{{ event.other_versions.get_absolute_url }}{% else %}#liste-dupliques{% endif %}">en plusieurs versions</a>, 
 | 
			
		||||
 
 | 
			
		||||
@@ -150,6 +150,6 @@ def linebreaks2(txt):
 | 
			
		||||
@register.filter
 | 
			
		||||
def only_allowed(elist, is_authenticated):
 | 
			
		||||
    if not is_authenticated:
 | 
			
		||||
        return elist.filter(status=Event.STATUS.PUBLISHED)
 | 
			
		||||
        return [e for e in elist if e.status == Event.STATUS.PUBLISHED]
 | 
			
		||||
    else:
 | 
			
		||||
        return elist
 | 
			
		||||
		Reference in New Issue
	
	Block a user