else:
return super(ActionQuerySet, self).obj_from_datadict(datadict)
- def get(self, *args, **kwargs):
- return super(ActionQuerySet, self).get(*args, **kwargs).leaf()
+ def get(self, *args, **kwargs):
+ action = super(ActionQuerySet, self).get(*args, **kwargs).leaf()
+
+ if not isinstance(action, self.model):
+ raise self.model.DoesNotExist()
+
+ return action
class ActionManager(CachedManager):
use_for_related_fields = True
class Action(BaseModel):
user = models.ForeignKey('User', related_name="actions")
+ real_user = models.ForeignKey('User', related_name="proxied_actions", null=True)
ip = models.CharField(max_length=16)
node = models.ForeignKey('Node', null=True, related_name="actions")
action_type = models.CharField(max_length=16)
'node_desc': node_desc,
}
+ def affected_links(self, viewer):
+ return ", ".join([self.hyperlink(u.get_profile_url(), self.friendly_username(viewer, u)) for u in set([r.user for r in self.reputes.all()])])
+
class Meta:
proxy = True