tôi, sau Thông báo lỗi,int() lập luận phải là một chuỗi hoặc một số, chứ không phải 'SimpleLazyObject'
TypeError tại/lưu/int() lập luận phải là một chuỗi hoặc một số, chứ không phải 'SimpleLazyObject'
Trong khi thực hiện biểu mẫu sau.
views.py
def bookmark_save_page(request):
if request.method == 'POST':
form = BookmarkSaveForm(request.POST)
if form.is_valid():
# create or get link
link, dummy = Link.objects.get_or_create(
url = form.cleaned_data['url']
)
# create or get bookmark
bookmark, created = Bookmark.objects.get_or_create(
user=request.user,
link=link
)
# update bookmarks title
bookmarks.title = form.cleaned_data['title']
# if the bookmark is being updated, clear old tag list.
if not created:
bookmark.tag_set.clear()
# create new tag list
tag_names = form.cleaned_data['tags'].split()
for tag_name in tag_names:
tag, dummy = Tag.objects.get_or_create(name=tag_name)
bookmark.tag_set.add(tag)
# save bookmark to database.
bookmark.save()
return HttpResponseRedirect(
'/user/%s/' % request.user.username
)
else:
form = BookmarkSaveForm()
variables = RequestContext(request, {
'form': form
})
return render_to_response('bookmark_save.html', variables)
tôi nghĩ rằng tôi đã nhận lỗi vì tôi đã thông qua liên kết ở
bookmark, created = Bookmark.objects.get_or_create(
user=request.user,
link=link
)
Nhưng tôi không thể tìm ra cách để sửa chữa nó. Làm cách nào để khắc phục sự cố?
Vâng, lỗi mà bạn đang nhận được nên có nhiều hơn một chút thông tin, có thể nếu bạn có thể đăng toàn bộ dấu vết có thể hữu ích. –