我与name
中的Album Model
匹配。它工作得很好。但是有些时候它并不匹配。它会引发错误消息Album matching query does not exist
。如果找不到匹配,我想要。然后不要显示任何错误消息。可能吗?感谢
def movie_details(request,slug):
movies = get_object_or_404(Movie,slug=slug)
# calculating wikipedia directory structer for images
#image_name = movies.image
name = movies.title
album_name = Album.objects.get(name__exact=name)
album_id = album_name.id
song_list = Song.objects.filter(album=album_id)
#image_path = generateWikiImage(image_name)
#
return render_to_response('base_movies.html',locals(),
context_instance=RequestContext(request)
)
错误消息
Album matching query does not exist
更新:
def movie_details(request,slug):
movies = get_object_or_404(Movie,slug=slug)
# calculating wikipedia directory structer for images
#image_name = movies.image
name = movies.title
try:
album_name = Album.objects.get(name__exact=name)
album_id = album_name.id
song_list = Song.objects.filter(album=album_id)
except:
pass
谢谢F.C.
答案 0 :(得分:1)
正如上面的评论中所建议的那样,您需要捕获引发的异常。在你的情况下,它是:
try:
album_name = Album.objects.get(name__exact=name)
except Album.DoesNotExist:
pass
如果您想要将album_name
设置为某个默认值,请将pass
替换为代码,将其设置为默认值。
(This StackOverflow post也处理类似的问题。)