当用户尝试共享 post 时,函数视图在 /group/share/42/ 处抛出异常 UnboundLocalError
Function view throws an exception of UnboundLocalError at /group/share/42/ when a user tries share a post
当我尝试在 group.The 异常跟踪中共享另一个用户的 post 时,/group/share/42/ 的异常 UnboundLocalError 可能是什么过程似乎在第一个forloop ( new = new_post.video.add(img) ) 这行是我的观点,供网友分享 post
def share_post(request, pk):
original_post = Post.objects.get(pk=pk)
form = ShareForm(request.POST)
if form.is_valid():
new_post = Post(
shared_body = request.POST.get('description'),
description = original_post.description,
username = original_post.username,
date_posted = original_post.date_posted,
shared_on = timezone.now(),
shared_user = request.user)
new_post.save()
for img in original_post.video:
shared = new_post.video.add(img)
shared.save()
return redirect('group:main',original_post.group.pk)
这是我的模型Post。
new_post
只有在表单有效时才会被赋值,所以你应该缩进 for
循环:
def share_post(request, pk):
original_post = Post.objects.get(pk=pk)
form = ShareForm(request.POST)
if form.is_valid():
<strong>new_post</strong> = Post(
shared_body = request.POST.get('description'),
description = original_post.description,
username = original_post.username,
date_posted = original_post.date_posted,
shared_on = timezone.now(),
shared_user = request.user
)
new_post.save()
for img in original_post.video:
new_post<strong>.video.add(img)</strong>
return redirect('group:main',original_post.group.pk)
当我尝试在 group.The 异常跟踪中共享另一个用户的 post 时,/group/share/42/ 的异常 UnboundLocalError 可能是什么过程似乎在第一个forloop ( new = new_post.video.add(img) ) 这行是我的观点,供网友分享 post
def share_post(request, pk):
original_post = Post.objects.get(pk=pk)
form = ShareForm(request.POST)
if form.is_valid():
new_post = Post(
shared_body = request.POST.get('description'),
description = original_post.description,
username = original_post.username,
date_posted = original_post.date_posted,
shared_on = timezone.now(),
shared_user = request.user)
new_post.save()
for img in original_post.video:
shared = new_post.video.add(img)
shared.save()
return redirect('group:main',original_post.group.pk)
这是我的模型Post。
new_post
只有在表单有效时才会被赋值,所以你应该缩进 for
循环:
def share_post(request, pk):
original_post = Post.objects.get(pk=pk)
form = ShareForm(request.POST)
if form.is_valid():
<strong>new_post</strong> = Post(
shared_body = request.POST.get('description'),
description = original_post.description,
username = original_post.username,
date_posted = original_post.date_posted,
shared_on = timezone.now(),
shared_user = request.user
)
new_post.save()
for img in original_post.video:
new_post<strong>.video.add(img)</strong>
return redirect('group:main',original_post.group.pk)