diff --git a/pagure/lib/model.py b/pagure/lib/model.py index 17e9437..c325c32 100644 --- a/pagure/lib/model.py +++ b/pagure/lib/model.py @@ -289,6 +289,7 @@ class Project(BASE): sa.ForeignKey('projects.id', onupdate='CASCADE'), nullable=True) _priorities = sa.Column(sa.Text, nullable=True) + _milestones = sa.Column(sa.Text, nullable=True) date_created = sa.Column(sa.DateTime, nullable=False, default=datetime.datetime.utcnow) @@ -374,6 +375,23 @@ class Project(BASE): self._settings = json.dumps(settings) @property + def milestones(self): + """ Return the dict stored as string in the database as an actual + dict object. + """ + milestones = {} + + if self._milestones: + milestones = json.loads(self._milestones) + + return milestones + + @milestones.setter + def milestones(self, milestones): + ''' Ensures the milestones are properly saved. ''' + self._milestones = json.dumps(milestones) + + @property def priorities(self): """ Return the dict stored as string in the database as an actual dict object.