私が持っています get_aboslute_url
私のモデルではDjangoで機能します。ここに私のコードです:
def get_absolute_url(self):
return reverse("detail", args=[self.author.full_name, self.title])
ここに私のコードはあります detail
関数:
def detail(request, author, title):
book = get_object_or_404(Book,
author__full_name=author,
title=title)
context = {"book": book}
return render(request, "booksreview/books_list.html", context)
そして、ここに私の問題があります。私は使いたい author
そして title
私のURLのスラッグとして。したがって、URLはこのように見えるはずです author-name/title-of-book
。どうしたらいいですか?
助けを前にありがとう。
回答:
回答№1は1あなたはこのようにすることができます:
class Book(models.Model):
author = ......
slug = models.SlugField(max_length=150)
title = models.CharField(max_length=100)
def save(self):
if not self.id:
self.slug = slugify(self.author__full_name + self.title)
def get_absolute_url(self):
return reverse("detail", kwargs={"slug": self.slug})