Je suis nouveau dans le framework Django et j'ai des problèmes avec ses fonctions de vue et les arguments qu'il accepte. Par exemple, considérons la fonction de vue suivante:Comment Django peut-il comprendre la différence entre slug et id in view?
def product-list(request, category_slug=None):
categories = Category.objects.all()
products = Product.objects.filter(not-finished=True)
if category_slug:
category = get_object_or_404(Category, slug=category_slug)
products = products.filter(category=category)
Mon problème est que:
- Comment comprendre que Django category_slug qui est passé à cette fonction est une limace et non une carte d'identité?
- Si la fonction avait 3 arguments comme
def product-list(request, id, category_slug):
comment saurait-il que le second argument est id et le dernier est le slug.
Merci beaucoup.
Merci pour votre aide. –
Mais j'ai encore un petit problème. Au code ci-dessus, comment fonctionne si category_slug: fonctionne? –
Si category_slug est quelque chose de faux, comme par exemple 'None' ou la chaîne vide' '' ', alors le corps de l'instruction if ne sera pas entré. Cette variable est utilisée pour filtrer la vue de liste de produits par catégorie. – wim