本文整理汇总了Python中reversion.add_meta函数的典型用法代码示例。如果您正苦于以下问题:Python add_meta函数的具体用法?Python add_meta怎么用?Python add_meta使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了add_meta函数的16个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: update_entities
def update_entities(model_dict, model_objects, appendable_keys):
'''
model_dict is the key value store of updated elements
model_objects are the models, these can be of type Actor, Bulletin or
Incident
delegates actual updating of fields to update_entity where the field
is to be replaced and to update_entity_appendable where the field is
to be added to
'''
appendable_dict, remainder_dict = separate_field_types(
model_dict, appendable_keys)
for model in model_objects:
model_dict_copy = remainder_dict.copy()
model_dict_copy = update_related_actors(model_dict_copy, model)
model = update_entity_appendable(appendable_dict, model)
model = update_entity_status(model_dict, model)
model = update_entity(model_dict_copy, model)
user = model_dict['user']
with reversion.create_revision():
model.save()
reversion.add_meta(
VersionStatus,
status='edited',
user=user
)
reversion.set_user(user)
comment_text = model_dict['comment']
reversion.set_comment(comment_text)
开发者ID:cormac,项目名称:open-corroborator,代码行数:29,代码来源:__init__.py
示例2: save
def save(self, internal=False, *args, **kwargs):
if internal:
with transaction.commit_on_success():
with reversion.create_revision():
super(Listing, self).save(*args, **kwargs)
for a in self._amenity_list:
#add actually does a save internally, hitting the db
self.amenities.add(a)
serializer = JSONSerializer()
for event in self._uncommitted_events:
#we don't need to store the instance because it's not really part of the parameters
#and django-reversion will keep a snapshop
kwargs_to_save = {k: v for k, v in event.kwargs.items() if k != 'instance'}
data = serializer.serialize(kwargs_to_save)
reversion.add_meta(RevisionEvent, name=event.event_fq_name, version=event.version, data=data)
self.send_events()
else:
from scrapy_test.aggregates.listing.services import listing_service
listing_service.save_or_update(self)
开发者ID:huokedu,项目名称:dynamic-scrapy,代码行数:26,代码来源:models.py
示例3: obj_create
def obj_create(self, bundle, **kwargs):
username = bundle.request.GET['username']
user = User.objects.filter(username=username)[0]
status_update = StatusUpdate.objects.get(status_en='Human Created')
if can_assign_users(user) is False and 'assigned_user' in bundle.data:
del(bundle.data['assigned_user'])
comment_uri = self.create_comment(
bundle.data['comment'],
status_update.id,
user
)
bundle.data['incident_comments'] = [
comment_uri
]
with reversion.create_revision():
bundle = super(IncidentResource, self)\
.obj_create(bundle, **kwargs)
reversion.add_meta(
VersionStatus,
status='created',
user=user
)
reversion.set_user(user)
reversion.set_comment(bundle.data['comment'])
update_object.delay(username)
return bundle
开发者ID:cormac,项目名称:open-corroborator,代码行数:29,代码来源:IncidentApi.py
示例4: create_revision
def create_revision(self, bundle, user, status_update):
with reversion.create_revision():
reversion.set_user(user)
reversion.set_comment(bundle.data['comment'])
reversion.add_meta(
VersionStatus,
status=status_update,
user=user
)
开发者ID:cormac,项目名称:open-corroborator,代码行数:9,代码来源:ApiMixin.py
示例5: wrapped
def wrapped(self, request, *args, **kwargs):
with reversion.create_revision():
ret = fn(self, request, *args, **kwargs)
reversion.set_user(request.user)
reversion.add_meta(RevisionProject, project=request.project)
if getattr(self, 'log_obj', None):
reversion.add_meta(RevisionLogActivity,
log_activity=self.log_obj)
return ret
开发者ID:Darriall,项目名称:editorsnotes,代码行数:9,代码来源:base.py
示例6: obj_update
def obj_update(self, bundle, **kwargs):
username = bundle.request.GET['username']
user = User.objects.filter(username=username)[0]
bundle.data['id'] = kwargs['pk']
if self.can_edit(user, bundle, Actor) is False:
raise ImmediateHttpResponse(
HttpForbidden('You do not have permission to edit this entity')
)
if self.is_finalized(
Actor,
kwargs['pk'],
'most_recent_status_actor'
) and can_finalize(user) is False:
raise ImmediateHttpResponse(
HttpForbidden('This item has been finalized')
)
if can_assign_users(user) is False and 'assigned_user' in bundle.data:
del(bundle.data['assigned_user'])
status_id = self.id_from_url(bundle.data)
status_update = StatusUpdate.filter_by_perm_objects.get_update_status(
user,
status_id
)
comment_uri = self.create_comment(
bundle.data['comment'],
status_update.id,
user
)
if "condition" not in bundle.data:
bundle.data['condition'] = None
if "POB" not in bundle.data:
bundle.data['POB'] = None
if "current_location" not in bundle.data:
bundle.data['current_location'] = None
try:
bundle.data['actor_comments'].append(comment_uri)
except KeyError:
bundle.data['actor_comments'] = [comment_uri, ]
with reversion.create_revision():
bundle = super(ActorResource, self)\
.obj_update(bundle, **kwargs)
reversion.add_meta(
VersionStatus,
status='edited',
user=user
)
reversion.set_user(user)
reversion.set_comment(bundle.data['comment'])
update_object.delay(username)
return bundle
开发者ID:cormac,项目名称:open-corroborator,代码行数:55,代码来源:ActorApi.py
示例7: form_valid
def form_valid(self, form, formsets):
with reversion.create_revision():
self.object, action = self.save_object(form, formsets)
# Set reversion metadata
reversion.set_user(self.request.user)
reversion.set_comment('%sed %s.' % (action, self.object._meta.module_name))
reversion.add_meta(RevisionProject, project=self.project)
self.save_formsets(formsets)
form.save_m2m()
return redirect(self.get_success_url())
开发者ID:GregePorter,项目名称:editorsnotes,代码行数:12,代码来源:common.py
示例8: testCanAddMetaToRevision
def testCanAddMetaToRevision(self):
# Create a revision with lots of meta data.
with reversion.create_revision():
self.test11.save()
reversion.set_comment("Foo bar")
self.assertEqual(reversion.get_comment(), "Foo bar")
reversion.set_user(self.user)
self.assertEqual(reversion.get_user(), self.user)
reversion.add_meta(RevisionMeta, age=5)
# Test the revision data.
revision = reversion.get_for_object(self.test11)[0].revision
self.assertEqual(revision.user, self.user)
self.assertEqual(revision.comment, "Foo bar")
self.assertEqual(revision.revisionmeta.age, 5)
开发者ID:larssos,项目名称:django-reversion,代码行数:14,代码来源:tests.py
示例9: obj_delete
def obj_delete(self, bundle, **kwargs):
username = bundle.request.GET['username']
user = User.objects.filter(username=username)[0]
with reversion.create_revision():
bundle = super(IncidentResource, self)\
.obj_delete(bundle, **kwargs)
reversion.add_meta(
VersionStatus,
user=user,
status='deleted'
)
reversion.set_user(user)
reversion.set_comment('Deleted')
update_object.delay(username)
return bundle
开发者ID:cormac,项目名称:open-corroborator,代码行数:16,代码来源:IncidentApi.py
示例10: updateMpasFromWdpaQueryset
def updateMpasFromWdpaQueryset(qs=None, poly=True, existingrevisions={}):
if qs is None:
qs = Wdpa2014Polygon.objects.all().defer(*Wdpa2014Polygon.get_geom_fields()).order_by('wdpaid')
count = 0
for wpoly in qs:
# mpa, created = Mpa.objects.get_or_create(wdpa_id=wpoly.wdpaid)
created = False
try:
mpa = Mpa.objects.get(wdpa_id=wpoly.wdpaid)
if mpa.country in UsaCodes:
print 'USA: not processing', wpoly.wdpaid
continue
except Mpa.DoesNotExist:
mpa = Mpa(wdpa_id=wpoly.wdpaid)
created = True
count += 1
print count
try:
versions = len(reversion.get_for_object(mpa))
except:
versions = 0
if versions > 0:
print 'Previous versions for wdpaid', wpoly.wdpaid
existingrevisions[wpoly.wdpaid] = (
{
'no_take_old': mpa.no_take,
'no_take_area_old': mpa.no_take_area
},
{
'no_take': wpoly.no_take,
'no_take_area': wpoly.no_tk_area
}
)
else:
print 'Updating wdpaid', wpoly.wdpaid
# update record and create a revision so we can roll back if needed
with transaction.atomic(), reversion.create_revision():
updateMpaFromWdpa(wpoly, mpa, poly)
comment = 'Updated record from WDPA October 2014'
reference = 'World Database on Protected Areas, October 2014'
reversion.set_comment(comment)
User = get_user_model()
user = User.objects.get(username='russmo')
reversion.set_user(user)
reversion.add_meta(VersionMetadata, comment=comment, reference=reference)
return True
开发者ID:mci,项目名称:mpatlas,代码行数:46,代码来源:merge.py
示例11: obj_update
def obj_update(self, bundle, **kwargs):
username = bundle.request.GET['username']
user = User.objects.filter(username=username)[0]
if self.is_finalized(
Incident,
kwargs['pk'],
'most_recent_status_incident'
) and can_finalize(user) is False:
raise ImmediateHttpResponse(
HttpForbidden('This item has been finalized')
)
if can_assign_users(user) is False and 'assigned_user' in bundle.data:
del(bundle.data['assigned_user'])
status_id = self.id_from_url(bundle.data)
status_update = StatusUpdate.filter_by_perm_objects.get_update_status(
user,
status_id
)
comment_uri = self.create_comment(
bundle.data['comment'],
status_update.id,
user
)
try:
bundle.data['incident_comments'].append(comment_uri)
except KeyError:
bundle.data['incident_comments'] = [comment_uri, ]
with reversion.create_revision():
bundle = super(IncidentResource, self)\
.obj_update(bundle, **kwargs)
reversion.add_meta(
VersionStatus,
user=user,
status='edited'
)
reversion.set_user(user)
reversion.set_comment(bundle.data['comment'])
update_object.delay(username)
return bundle
开发者ID:cormac,项目名称:open-corroborator,代码行数:43,代码来源:IncidentApi.py
示例12: post
def post(self, request, *args, **kwargs):
"""Add a new note section"""
section_type = request.DATA.get('section_type', None)
if section_type is None:
raise Exception('need a section type')
sec_serializer = _serializer_from_section_type(section_type)
serializer = sec_serializer(
data=request.DATA, context={
'request': request,
'create_revision': True
})
if serializer.is_valid():
serializer.object.note = self.get_object()
serializer.object.creator = request.user
serializer.object.last_updater = request.user
with reversion.create_revision():
serializer.save()
reversion.set_user(request.user)
reversion.add_meta(RevisionProject, project=request.project)
return Response(serializer.data, status=status.HTTP_201_CREATED)
return Response(serializer.data, status=status.HTTP_400_BAD_REQUEST)
开发者ID:GregePorter,项目名称:editorsnotes,代码行数:23,代码来源:notes.py
示例13: sum
'price': cat_price_total,
'total': sum([cat_exp_total, cat_price_total]),
'task_set': task_set_json,
}
return result_dict
reversion.register(Project, follow=['task_set'], exclude=["created, modified"])
class ProjectImage(Slugged):
project = models.ForeignKey(Project, related_name="project_images")
update = models.ForeignKey('updates.Update', related_name="project_images", null=True, blank=True)
change_order = models.ForeignKey('changes.ChangeOrder', related_name="project_images", null=True, blank=True)
image = models.ImageField(max_length=200, upload_to='projects', width_field='width', height_field='height')
width = models.IntegerField(max_length=255, blank=True, null=True)
height = models.IntegerField(max_length=255, blank=True, null=True)
#approved = models.NullBooleanField()
class Meta:
verbose_name = _("Project Image")
verbose_name_plural = _("Project Images")
order_with_respect_to = 'project'
'''
class VersionRating(models.Model):
revision = models.OneToOneField(Revision) # This is required
rating = models.PositiveIntegerField()
reversion.add_meta(VersionRating, rating=5)
'''
开发者ID:sacrac,项目名称:django-cpm,代码行数:30,代码来源:models.py
示例14: wrapped
def wrapped(self, request, *args, **kwargs):
with reversion.create_revision():
ret = fn(self, request, *args, **kwargs)
reversion.set_user(request.user)
reversion.add_meta(RevisionProject, project=request.project)
return ret
开发者ID:GregePorter,项目名称:editorsnotes,代码行数:6,代码来源:base.py
示例15: record_destroy
def record_destroy(self, request, instance):
commit_comment = request.data.get('commit-comment', '')
instance.save()
reversion.set_user(user=self.request.user)
reversion.set_comment(comment=commit_comment)
reversion.add_meta(CommitDeletion)
开发者ID:huang-ying,项目名称:gennotes,代码行数:6,代码来源:views.py
示例16: bind_revision
def bind_revision(self, obj, attrname='revision'):
reversion.add_meta(ReversionMerger(attrname), obj=obj)
开发者ID:freevoid,项目名称:yawf,代码行数:2,代码来源:reversion.py
注:本文中的reversion.add_meta函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论