I am a newby to Django (2.0) and need some assistance, please.  I have a 
list of Grocery Wholesale Vendors in one model and their Contacts in 
another with one to many join.  

The Model...

from django.conf import settings
from django.db import models
from django.urls import reverse

[...]

#Grocery Wholesale Table
class GroceryWholesale(models.Model):
    grocery_wholesaler = models.CharField(max_length=150)
    grocery_wholesaler_active = models.BooleanField(default=True)

    def __str__(self):
        """A string representation of the model."""
        return self.grocery_wholesaler[:50]

    class Meta:
        verbose_name_plural = "Grocery Wholesalers"

#Grocery Wholesale Contacts Table
class GroceryWholesaleContacts(models.Model):
    grocery_wholesaler = models.ForeignKey(GroceryWholesale, 
on_delete=models.CASCADE)
    contact_name = models.CharField(max_length=150, null=True)
    contact_phone = models.CharField(max_length=75,null=True)
    contact_mobile = models.CharField(max_length=75,null=True)
    contact_fax = models.CharField(max_length=75, null=True)
    contact_email = models.CharField(max_length=150, null=True)
    contact_notes = models.CharField(max_length=200, null=True)
    contact_active = models.BooleanField(default=True)

    def __str__(self):
        """A string representation of the model."""
        return self.contact_name[:50]

    class Meta:
        verbose_name_plural = "Grocery Wholesaler Contacts"

Then in my URLs I have 

from django.urls import path
from . import views

urlpatterns = [
    path('gwlist', views.GroceryWholesalersListView.as_view(), 
name='grocerywholesalers'),
    path('gwclist/<int:gwpk>/', 
views.GroceryWholesalersContactsListView.as_view(), 
name='grocerywholesalerscontacts'),
]

My Views I have 

from django.shortcuts import render
from django.contrib.auth.mixins import LoginRequiredMixin
from django.views.generic import ListView, DetailView
from django.views.generic import TemplateView
from django.urls import reverse
from django.http import HttpResponse
from . import models
from .models import GroceryWholesale, GroceryWholesaleContacts

# Create your views here.
class GroceryWholesalersListView(ListView):
    model = models.GroceryWholesale
    context_object_name = 'grocery_wholesalers'
    template_name = 'grocery_wholesaler_list.html'
    ordering = ['grocery_wholesaler']

class GroceryWholesalersContactsListView(ListView):
    model = models.GroceryWholesaleContacts
    context_object_name = 'grocery_contacts'
    template_name = 'grocery_wholesaler_contacts_list.html'
    ordering = ['contact_name']
    def get_queryset(self):
        return 
GroceryWholesaleContacts.objects.filter(grocery_wholesaler_id=request.gwpk)

It's the part in Red I am having trouble with.  If I hand type a primary 
key for the Grocery Wholesaler I get the correct filtered list of contacts  
IE
return GroceryWholesaleContacts.objects.filter(grocery_wholesaler_id='90') and 
that pulls up the Grocery Wholesaler contacts filtered to ONLY show the 
ones belonging to grocery_wholesale_id #90

BUT I am trying to figure out how to pull the PK code dynamically from the 
URL instead and I can't figure it out or what it is called to google for 
help.  My URL looks like this...  http://127.0.0.1:8000/clients/gwclist/90/

Any help is greatly appreciated.  I hope I explained this correctly.  

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-users+unsubscr...@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/3a144ad0-ee41-406e-8eb6-532c001ac152%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to