PY-10988 Instance attribute defined outside __init__ with property setter

This commit is contained in:
Ekaterina Tuzova
2013-10-04 20:26:00 +04:00
parent 0c90a2dae7
commit 14f55f9984
8 changed files with 72 additions and 37 deletions

View File

@@ -0,0 +1,24 @@
class FavouriteManager(object):
"""Favourite manager"""
def __init__(self, session):
self._session = session
@property
def _favourite_ids(self):
"""Get favourites"""
try:
return map(int, self._session.get('favourite', '').split(','))
except ValueError:
return []
@_favourite_ids.setter
def _favourite_ids(self, ids):
"""Set favourites ids"""
self._session['favourite'] = ','.join(set(ids))
def add(self, estate):
"""Add estate to favourite"""
ids = self._favourite_ids
ids.append(estate.id)
self._favourite_ids = ids