def submit_view(self, request, object_id):
try:
obj = self.model._default_manager.get(pk=object_id)
except self.model.DoesNotExist:
raise Http404
form = self.get_autopost_form(request, obj)
if form.is_valid():
obj_ct = ContentType.objects.get_for_model(obj)
text = form.cleaned_data.get('text')
networks = form.cleaned_data.get('networks')
for network in networks:
try:
post = FeedPost.objects.get(
network=network,
content_type=obj_ct,
object_id=obj.pk,
)
except FeedPost.DoesNotExist:
FeedPost.objects.create(
network=network,
url=request.build_absolute_uri(self.get_autopost_url(obj)),
text=text,
content_type=obj_ct,
object_id=obj.pk,
)
else:
if post.scheduled:
# ????????? ??????
post.url = request.build_absolute_uri(self.get_autopost_url(obj))
post.text = text
post.save()
return JsonResponse({})
else:
return JsonResponse({
'errors': form.errors
}, status=400)
评论列表
文章目录