python django fields and row calculation

105 views
Skip to first unread message

sum abiut

unread,
Apr 4, 2017, 8:50:37 PM4/4/17
to django...@googlegroups.com
Hi,

I am working on an leave management system and I am having a some difficulties trying to figure out how to accomplished this scenario.

for example i have a table of.

when a user apply for a leave i want to get the previous total_leave_balance of the applicant and minus his/her current num_days and assign the result to be the total_leave_balance. Please advise what would be the best way to approach this.


username first_name second_name num_days leave_entitlement beginning_bal Total_leave_balance
jtom james tom 3 12 23 20
tjohn tom john 2 2 5 7
atom anna tom 3 21 2

jtom james tom 3 4 2

atom anna tom 3 3 5



cheers,

Lachlan Musicman

unread,
Apr 4, 2017, 9:21:15 PM4/4/17
to django...@googlegroups.com
Depends on your models, but write a small function that returns the balance?

def balance(self):
    return self.entitlement - self.num_days


(for instance)

L.

------
The most dangerous phrase in the language is, "We've always done it this way."

- Grace Hopper

--
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+unsubscribe@googlegroups.com.
To post to this group, send email to django...@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/CAPCf-y562uvxRwTf0iFnT6Lcos8_nd3FD5u%3D7MVVp2yN4qAcDA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

sum abiut

unread,
Apr 4, 2017, 11:21:33 PM4/4/17
to django...@googlegroups.com
Thank for taking your time to respond. my problem is automating that, for example when a user apply for a leave i want the system to calculate and update the total balance automatically. But Since a user can apply for a leave more that once which mean a user can have more that one record of leave application on the database. My problem is having to figure out when was the last time that the user has launch his/her leave application so that i can minus num_days from the that total balance.


thanks

 

Lachlan Musicman

unread,
Apr 4, 2017, 11:43:04 PM4/4/17
to django...@googlegroups.com
Well, if it's on the user model as a function, then it will happen as soon as you call it.

If they can have mulitple applications in process, then you will need to program your function(s) to account for that.

As they say "there's more than one way to do it".

You could add a "remaining days" var to the user model and store the info in there secretly.
You could get the function to programmatically work through the applications for the user in the order in which they have been received?
...

cheers
L.


------
The most dangerous phrase in the language is, "We've always done it this way."

- Grace Hopper

sum abiut

unread,
Apr 5, 2017, 5:17:52 PM4/5/17
to django...@googlegroups.com
Thanks heaps this should get me started

ijazz jazz

unread,
Jun 12, 2018, 12:33:09 AM6/12/18
to Django users
In short, a model's manager is an object through which Django models perform ... (For row-level functionality – i.e., functions that act on a single instance of a model object ... This has a single method, title_count() , which does the calculation.


Reply all
Reply to author
Forward
0 new messages