I've finally decided to learn a web framework and have chosen Django. I'm still a noob, so sorry if my question is easy.

I'm trying to create an object rating system based on multiple criteria that is also weighted. E.g. criteria 1 is worth 30%, criteria 2 is worth 35%, and criteria 3 is worth 35%. Then create an average user rating per object and an overall average of all users rating per object. Each user's rating would factor into the overall rating of that object. I'm having a hard time trying to come up with the models and work flow. Here's what I've got so far (not much I guess):

item_rating model:
theitem (a foreign key)
theuser (a foreign key)
criteria1
criteria2
criteria3

I guess my main question is where do I store the overall average (a column in the item model that gets updated each time that item is rated?) and where does the logic that pertains to the criteria weights go.

Please let me know if you have any questions. Thanks for any help you might provide.