我有一個Django模型,它有一個live
布爾屬性。
我希望視圖通過slug獲取模型,并且只有在使用DetailView(不是基于函數的視圖)時才轉到這個頁面,因為我想看看如何做到這一點。
Model definition
# myapp/models.py
class MyModel(models.Model):
name = models.CharField(max_length=255)
live = models.BooleanField(default=True)
slug = models.SlugField()
def save(self, *args, **kwargs):
self.slug = slugify(self.name)
我希望這樣做:
class ModelDetailView(DetailView):
model = MyModel
def get(self, request, *args, **kwargs):
service = self.get_object_or_404(Service, live=True) # <- Main point of what I'm looking for help with
return super().get(request, *args, *kwargs)
有沒有辦法這樣過濾?
您可以指定要篩選的
queryset
,因此:因此,您根本不需要實現
.get(…)
方法。