【发布时间】:2015-09-25 12:43:28
【问题描述】:
我想在我的应用程序中添加收藏功能,由于可以收藏许多模型,我将在 Django 中使用ContentType framework。
我的问题是,我不知道如何从表单中获取模型的content_type?
查看:
@login_required
def add_or_remove(request):
user = request.user
try:
app_model = request.POST["target_model"]
obj_id = int(request.POST["target_object_id"])
except (KeyError, ValueError):
return HttpResponseBadRequest()
fav = Favorite.objects.get_favorite(user, obj_id, model=app_model)
if fav is None:
Favorite.objects.create(user, obj_id, app_model)
return HttpResponse('Done!')
表单(form.html)
<form action="" action="POST">
<input type="hidden" value="{{ object.id}}" name="target_object_id">
<input type="hidden" value="?" name="target_model">
</form>
所以,我知道如何获取object_id 和user,但是如何在表单中显示app_model?
我已经阅读了文档,但我真的不明白。
谢谢!
【问题讨论】:
标签: python django django-contenttypes