def projectdetail(request):
    projectExpnseDetails = Expense.objects.select_related('project').all()
    return render(request, 'busprojectdetail.html', {'project': project,
'expense_list':projectExpnseDetails })


On Sat, Sep 7, 2019, 1:43 AM Bhoopesh sisoudiya <[email protected]>
wrote:

> Write this
>
> Expense.objects.select_related('project').all()
>
>
>
> On Sat, Sep 7, 2019, 1:37 AM Kean <[email protected]> wrote:
>
>> Thanks,
>>
>> I updated the view, and now I am getting syntax error.
>> Please see below.
>>
>> views.py
>>
>> def projectdetail(request):
>>     project = Project.objects.all()
>>     return render(request, 'busprojectdetail.html', {'project': project,
>> 'expense_list': project.expenses.all()})
>>
>>     projectDetails =
>> Project.objects.select_related(Project).values(select column).all()
>>
>> please advise how to correct?
>>
>> Best,
>>
>> Kean
>>
>> On 6 Sep 2019, at 21:01, Bhoopesh sisoudiya <[email protected]> wrote:
>>
>> def projectdetail(request):
>>     project = Project.objects.all()
>>     return render(request, 'busprojectdetail.html', {'project': project,
>> 'expense_list': project.expenses.all()})
>>
>> According to me by this archive you want expense details of each project
>>
>> Then you write
>>
>> projectDetails = Project.objects.select_related(your foreign key).values
>> (select column).all()
>>
>> Thanks
>> Bhoopesh sisoudiya
>>
>>
>> On Sat, Sep 7, 2019, 1:22 AM Kean <[email protected]> wrote:
>>
>>> Hi,
>>>
>>> please ignore the manager it is just a naming convention ignore, it if
>>> for me to identify tables, if i have 50 table, I want to be able to know
>>> which model is holding which object information and for what I need it.
>>>
>>> Please use below, I have removed the # information to reduce confusion.
>>>
>>> models.py
>>>
>>> class Project(models.Model):
>>>     name = models.CharField(max_length=100)
>>>     budget = IntegerField()
>>>
>>>     def save(self, *args, **kwargs):
>>>         self.name
>>>         super(Project, self).save(*args, **kwargs)
>>>
>>> class Category(models.Model):
>>>     project = models.ForeignKey(
>>>         Project, on_delete=models.CASCADE)
>>>     name = models.CharField(max_length=150)
>>>
>>> class Expense(models.Model):
>>>     project = models.ForeignKey(
>>>         Project, on_delete=models.CASCADE, related_name='expenses')
>>>     title = models.CharField(max_length=100)
>>>     amount = models.DecimalField(max_digits=8, decimal_places=2)
>>>     category = models.ForeignKey(Category, on_delete=models.CASCADE)
>>> On 6 Sep 2019, at 20:45, Bhoopesh sisoudiya <[email protected]>
>>> wrote:
>>>
>>> Best wishes,
>>> Kean
>>>
>>> Ok No problem but
>>> why you want Manager?
>>>
>>> Please send me answer
>>>
>>> Thanks
>>> Bhoopesh sisoudiya
>>>
>>> On Sat, Sep 7, 2019, 1:06 AM Kean <[email protected]> wrote:
>>>
>>>> Hi Bhoopesh
>>>> Thanks for this, please can you put it into the context of my specific
>>>> model setup, so I get it right and understand.
>>>> This will be easier for me as this approach is causing me some other
>>>> errors, when i try to apply it.
>>>>
>>>> Best wishes,
>>>>
>>>> Kean
>>>> On 6 Sep 2019, at 20:19, Bhoopesh sisoudiya <[email protected]>
>>>> wrote:
>>>>
>>>> Hi Kean,
>>>>
>>>>  Write manager like this ,I give you reference
>>>>
>>>> from django.db import models
>>>>  # First, define the Manager subclass.
>>>> class BhoopeshBookManager(models.Manager):
>>>>    def get_queryset(self):
>>>>         return super(BhoopeshBookManager,
>>>> self).get_queryset().filter(author='Bhoopesh')
>>>>
>>>> # Then hook it into the Book model explicitly. class
>>>> Book(models.Model):
>>>> title = models.CharField(max_length=100)
>>>> author = models.CharField(max_length=50)
>>>>  # ...
>>>> objects = models.Manager()
>>>>  # The default manager.
>>>>
>>>> bhoopesh_objects = BhoopeshBookManager()
>>>>  # The Bhoopesh-specific manager.
>>>>
>>>>
>>>> Book.bhoopesh_objects.all() # use manager
>>>>
>>>>
>>>> Thanks
>>>> Bhoopesh Kumar
>>>>
>>>>
>>>> On Sat, Sep 7, 2019, 12:34 AM Bhoopesh sisoudiya <[email protected]>
>>>> wrote:
>>>>
>>>>> Hi kean,
>>>>>     Please check Expenses Class is not Manager
>>>>>     Please make Manager Class.
>>>>>
>>>>>
>>>>> Thanks
>>>>> Bhoopesh sisoudiya
>>>>>
>>>>> On Sat, Sep 7, 2019, 12:20 AM Kean <[email protected]> wrote:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> New to Django. when navigating to the reqired view, I get the error
>>>>>> above.
>>>>>>
>>>>>> urls.py
>>>>>>
>>>>>> path('businesslogin/businessadmin/busproject', views.projectdetail,
>>>>>> name='projectdetail'),
>>>>>>
>>>>>> views.py
>>>>>>
>>>>>> def projectdetail(request):
>>>>>>     project = Project.objects.all()
>>>>>>     return render(request, 'busprojectdetail.html', {'project':
>>>>>> project, 'expense_list': project.expenses.all()})
>>>>>>
>>>>>> models.py
>>>>>>
>>>>>> # Project model
>>>>>>
>>>>>> class Project(models.Model):
>>>>>>     name = models.CharField(max_length=100)
>>>>>>     budget = IntegerField()
>>>>>>
>>>>>>     def save(self, *args, **kwargs):
>>>>>>         self.name
>>>>>>         super(Project, self).save(*args, **kwargs)
>>>>>>
>>>>>> # Category manager model
>>>>>>
>>>>>>
>>>>>> class Category(models.Model):
>>>>>>     project = models.ForeignKey(
>>>>>>         Project, on_delete=models.CASCADE)
>>>>>>     name = models.CharField(max_length=150)
>>>>>>
>>>>>>
>>>>>> # Expenses manager model
>>>>>>
>>>>>> class Expense(models.Model):
>>>>>>     project = models.ForeignKey(
>>>>>>         Project, on_delete=models.CASCADE, related_name='expenses')
>>>>>>     title = models.CharField(max_length=100)
>>>>>>     amount = models.DecimalField(max_digits=8, decimal_places=2)
>>>>>>     category = models.ForeignKey(Category, on_delete=models.CASCADE)
>>>>>>
>>>>>> the error is as follows:
>>>>>>
>>>>>>
>>>>>> Exception Type: AttributeError
>>>>>> Exception Value:
>>>>>>
>>>>>> 'QuerySet' object has no attribute 'expenses'
>>>>>>
>>>>>> Exception Location: 
>>>>>> /Users/ProductionEnv/Desktop/test/test1/dev/core/views.py
>>>>>> in projectdetail, line 238
>>>>>>
>>>>>> Please can anyone help?
>>>>>>
>>>>>> Best
>>>>>>
>>>>>> K
>>>>>>
>>>>>>
>>>>>> --
>>>>>> 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 [email protected].
>>>>>> To view this discussion on the web visit
>>>>>> https://groups.google.com/d/msgid/django-users/024bc998-b683-41ae-90e2-d33f4527913a%40googlegroups.com
>>>>>> <https://groups.google.com/d/msgid/django-users/024bc998-b683-41ae-90e2-d33f4527913a%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>> .
>>>>>>
>>>>>
>>>> --
>>>> 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 [email protected].
>>>> To view this discussion on the web visit
>>>> https://groups.google.com/d/msgid/django-users/CAAk3c1NmgbP7cQtyX8uOAFX%3DXbyC6f2ug1FURabwxRgD44Mwpg%40mail.gmail.com
>>>> <https://groups.google.com/d/msgid/django-users/CAAk3c1NmgbP7cQtyX8uOAFX%3DXbyC6f2ug1FURabwxRgD44Mwpg%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>>>
>>>>
>>>> --
>>>> 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 [email protected].
>>>> To view this discussion on the web visit
>>>> https://groups.google.com/d/msgid/django-users/52D49AAA-5E17-4F6C-92DE-E1576F305927%40gmail.com
>>>> <https://groups.google.com/d/msgid/django-users/52D49AAA-5E17-4F6C-92DE-E1576F305927%40gmail.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>>
>>> --
>>> 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 [email protected].
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/django-users/CAAk3c1PtFX7oNie8qZKF%3Dm7jFrCEMwTZfn%2BcvWBFSqc9FT0h4A%40mail.gmail.com
>>> <https://groups.google.com/d/msgid/django-users/CAAk3c1PtFX7oNie8qZKF%3Dm7jFrCEMwTZfn%2BcvWBFSqc9FT0h4A%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>>
>>>
>>> --
>>> 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 [email protected].
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/django-users/06BE184B-33E5-4B84-A723-5C7075048349%40gmail.com
>>> <https://groups.google.com/d/msgid/django-users/06BE184B-33E5-4B84-A723-5C7075048349%40gmail.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>
>> --
>> 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 [email protected].
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/django-users/CAAk3c1OiCB0YW_5%2B2CcjFGJzBytRpOmKCw%3D3f_C2w-0JuESnvA%40mail.gmail.com
>> <https://groups.google.com/d/msgid/django-users/CAAk3c1OiCB0YW_5%2B2CcjFGJzBytRpOmKCw%3D3f_C2w-0JuESnvA%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>>
>> --
>> 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 [email protected].
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/django-users/79DB1D00-AF66-4584-B635-7C22F9673733%40gmail.com
>> <https://groups.google.com/d/msgid/django-users/79DB1D00-AF66-4584-B635-7C22F9673733%40gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
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 [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/CAAk3c1Oi9oY5gCH3cDpF%3DNQN1FLBJp-Q-zfqCvhrh6i07OJr6g%40mail.gmail.com.

Reply via email to