7

fixes adapter issues and fixes block for segments adapter

This commit is contained in:
blurrah
2017-05-31 12:13:12 +02:00
parent 20011f079d
commit a78290281b
2 changed files with 6 additions and 4 deletions

View File

@ -97,8 +97,11 @@ class SessionSegmentsAdapter(BaseSegmentsAdapter):
:rtype: wagtail_personalisation.models.Segment or None
"""
return next(item for item in self.request.session['segments']
if item.id == segment_id)
try:
return next(item for item in self.request.session['segments']
if item['id'] == segment_id)
except StopIteration:
return None
def add(self, segment):
"""Add a segment to the request session.

View File

@ -3,7 +3,6 @@ from django.template import TemplateSyntaxError
from django.template.base import FilterExpression, kwarg_re
from django.utils.safestring import mark_safe
from wagtail_personalisation.app_settings import segments_adapter
from wagtail_personalisation.models import Segment
register = template.Library()
@ -81,7 +80,7 @@ class SegmentNode(template.Node):
return ""
# Check if user has segment
user_segment = segments_adapter.get_segment(segment_id=segment.pk)
user_segment = context['request'].segment_adapter.get_segment(segment_id=segment.pk)
if not user_segment:
return ""