def setUp(self): self.old_models = get_models() SETTINGS['MODELS'] = {} for model in self.actstream_models: SETTINGS['MODELS'][model.lower()] = apps.get_model( *model.split('.')) setup_generic_relations()
def setup_generic_relations(): """ Set up GenericRelations for actionable models. """ for model in actstream_settings.get_models().values(): if not model: continue actstream_register_model(model)
def check_actionable_model(model): """ If the model is not defined in the ``MODELS`` setting this check raises the ``ModelNotActionable`` exception. """ model = model if hasattr(model, 'objects') else model.__class__ if not model in get_models().values(): raise ModelNotActionable(model)
def setup_generic_relations(): """ Set up GenericRelations for actionable models. """ for model in actstream_settings.get_models().values(): if not model: continue for field in ("actor", "target", "action_object"): generic.GenericRelation( Action, content_type_field="%s_content_type" % field, object_id_field="%s_object_id" % field, related_name="actions_with_%s_%s_as_%s" % (model._meta.app_label, model._meta.module_name, field), ).contribute_to_class(model, "%s_actions" % field) # @@@ I'm not entirely sure why this works setattr(Action, "actions_with_%s_%s_as_%s" % (model._meta.app_label, model._meta.module_name, field), None)
def setup_generic_relations(): """ Set up GenericRelations for actionable models. """ for model in actstream_settings.get_models().values(): if not model: continue for field in ('actor', 'target', 'action_object'): generic.GenericRelation( Action, content_type_field='%s_content_type' % field, object_id_field='%s_object_id' % field, related_name='actions_with_%s_%s_as_%s' % (model._meta.app_label, model._meta.module_name, field), ).contribute_to_class(model, '%s_actions' % field) # @@@ I'm not entirely sure why this works setattr( Action, 'actions_with_%s_%s_as_%s' % (model._meta.app_label, model._meta.module_name, field), None)
def setup_generic_relations(): """ Set up GenericRelations for actionable models. In Django 1.8 Model._meta.module_name was renamed to model_name. """ from django.contrib.contenttypes.fields import GenericRelation for model in actstream_settings.get_models().values(): if not model: continue for field in ('actor', 'target', 'action_object'): GenericRelation(Action, content_type_field='%s_content_type' % field, object_id_field='%s_object_id' % field, related_query_name='actions_with_%s_%s_as_%s' % ( model._meta.app_label, model._meta.model_name, field), ).contribute_to_class(model, '%s_actions' % field) setattr(Action, 'actions_with_%s_%s_as_%s' % ( model._meta.app_label, model._meta.model_name, field), None)
def setup_generic_relations(): """ Set up GenericRelations for actionable models. """ for model in actstream_settings.get_models().values(): if not model: continue for field in ('actor', 'target', 'action_object'): attr = '%s_actions' % field if isinstance(getattr(model, attr, None), generic.ReverseGenericRelatedObjectsDescriptor): break generic.GenericRelation(Action, content_type_field='%s_content_type' % field, object_id_field='%s_object_id' % field, related_name='actions_with_%s_%s_as_%s' % ( model._meta.app_label, model._meta.module_name, field), ).contribute_to_class(model, attr) # @@@ I'm not entirely sure why this works setattr(Action, 'actions_with_%s_%s_as_%s' % ( model._meta.app_label, model._meta.module_name, field), None)
def setUp(self): self.old_models = get_models() setup_generic_relations()
def setUp(self): self.old_models = get_models() SETTINGS['MODELS'] = {} for model in self.actstream_models: SETTINGS['MODELS'][model.lower()] = get_model(*model.split('.')) setup_generic_relations()