-def poem_from_book(request, slug):
- book = get_object_or_404(Book, slug=slug)
- user = request.user if request.user.is_authenticated else None
+def poem_from_book(request, book):
+ kwargs = Book.split_urlid(book)
+ if kwargs is None:
+ raise Http404
+ book = get_object_or_404(Book, **kwargs)
+ user = request.user if request.user.is_authenticated() else None