Add __repr__ to Activity and Generator class

This commit is contained in:
Jessica Tallon 2014-10-07 08:54:26 +01:00
parent 240e987016
commit 2b1916182d
4 changed files with 21 additions and 4 deletions

View File

@ -410,7 +410,7 @@ class ActivityMixin(object):
"like": {"simple": _("{username} liked {object}")}, "like": {"simple": _("{username} liked {object}")},
"post": { "post": {
"simple": _("{username} posted {object}"), "simple": _("{username} posted {object}"),
"targetted": _("{username} posted {object} to {targetted}"), "targetted": _("{username} posted {object} to {target}"),
}, },
"share": {"simple": _("{username} shared {object}")}, "share": {"simple": _("{username} shared {object}")},
"unfavorite": {"simple": _("{username} unfavorited {object}")}, "unfavorite": {"simple": _("{username} unfavorited {object}")},

View File

@ -1070,6 +1070,12 @@ class Generator(Base):
updated = Column(DateTime, default=datetime.datetime.now) updated = Column(DateTime, default=datetime.datetime.now)
object_type = Column(Unicode, nullable=False) object_type = Column(Unicode, nullable=False)
def __repr__(self):
return "<{klass} {name}>".format(
klass=self.__class__.__name__,
name=self.name
)
def serialize(self, request): def serialize(self, request):
return { return {
"id": self.id, "id": self.id,
@ -1168,6 +1174,18 @@ class Activity(Base, ActivityMixin):
foreign_keys="Activity.actor", post_update=True) foreign_keys="Activity.actor", post_update=True)
get_generator = relationship(Generator) get_generator = relationship(Generator)
def __repr__(self):
if self.content is None:
return "<{klass} verb:{verb}>".format(
klass=self.__class__.__name__,
verb=self.verb
)
else:
return "<{klass} {content}>".format(
klass=self.__class__.__name__,
content=self.content
)
@property @property
def get_object(self): def get_object(self):
if self.object is None: if self.object is None:

View File

@ -14,8 +14,7 @@
# You should have received a copy of the GNU Affero General Public License # You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>. # along with this program. If not, see <http://www.gnu.org/licenses/>.
from mediagoblin.db.models import Activity, Generator, User, MediaEntry, \ from mediagoblin.db.models import Activity, Generator, User
MediaComment, Collection
def create_activity(verb, obj, actor, target=None): def create_activity(verb, obj, actor, target=None):
""" """

View File

@ -200,7 +200,7 @@ def media_post_comment(request, media):
_('Your comment has been posted!')) _('Your comment has been posted!'))
trigger_notification(comment, media, request) trigger_notification(comment, media, request)
create_activity("post", comment, comment.author) create_activity("post", comment, comment.author, target=media)
add_comment_subscription(request.user, media) add_comment_subscription(request.user, media)
return redirect_obj(request, media) return redirect_obj(request, media)