|
Revision 1, 1.0 KB
(checked in by 235, 4 years ago)
|
|
re-comminting after curios incident with same filenames in upper and lower case`
|
| Line | |
|---|
| 1 | # -*- coding: utf-8 -*- |
|---|
| 2 | from django.db import models |
|---|
| 3 | from django.contrib.auth.models import User |
|---|
| 4 | |
|---|
| 5 | class Feedback(models.Model): |
|---|
| 6 | user = models.ForeignKey(User) |
|---|
| 7 | pub_date = models.DateTimeField(auto_now_add=True) |
|---|
| 8 | body = models.TextField() |
|---|
| 9 | votes = models.IntegerField(default=0) |
|---|
| 10 | |
|---|
| 11 | class Admin: |
|---|
| 12 | list_display = ('pub_date', 'user', 'votes', 'body') |
|---|
| 13 | list_filter = ('pub_date', 'user',) |
|---|
| 14 | search_fields = ['body'] |
|---|
| 15 | date_hierarchy = 'pub_date' |
|---|
| 16 | |
|---|
| 17 | class Meta: |
|---|
| 18 | ordering = ('-pub_date',) |
|---|
| 19 | get_latest_by = 'pub_date' |
|---|
| 20 | verbose_name = 'Feedback' |
|---|
| 21 | |
|---|
| 22 | class FeedbackVote(models.Model): |
|---|
| 23 | user = models.ForeignKey(User) |
|---|
| 24 | feedback = models.ForeignKey(Feedback) |
|---|
| 25 | |
|---|
| 26 | def save(self): |
|---|
| 27 | super(FeedbackVote, self).save() |
|---|
| 28 | self.feedback.votes = self.feedback.feedbackvote_set.all().count() |
|---|
| 29 | self.feedback.save() |
|---|
| 30 | |
|---|
| 31 | class Meta: |
|---|
| 32 | unique_together = ("user", "feedback") |
|---|