|
1 | 1 | from django.db import models |
2 | | -from utils.shortcuts import rand_str |
| 2 | +from problem.models import Problem |
| 3 | +from account.models import User |
3 | 4 |
|
4 | 5 |
|
5 | 6 | class JudgeStatus: |
@@ -29,24 +30,23 @@ class ProblemScore: |
29 | 30 |
|
30 | 31 |
|
31 | 32 | class Temperature(models.Model): |
32 | | - user_id = models.IntegerField(unique=True) |
| 33 | + user = models.ForeignKey(User, null=True, on_delete=models.CASCADE) |
33 | 34 | temperature = models.IntegerField(default=0) |
34 | 35 | date = models.DateField(auto_now_add=True) |
35 | 36 |
|
36 | 37 | class Meta: |
37 | 38 | db_table = "temperature" |
38 | | - unique_together = (("user_id", "date"),) |
| 39 | + unique_together = (("user", "date"),) |
39 | 40 | ordering = ("-date",) |
40 | 41 |
|
41 | 42 |
|
42 | 43 | class SolvedProblem(models.Model): |
43 | | - id = models.TextField(default=rand_str, primary_key=True, db_index=True) |
44 | | - user_id = models.IntegerField(db_index=True) |
45 | | - _id = models.TextField(db_index=True, default=0) |
| 44 | + user = models.ForeignKey(User, null=True, on_delete=models.CASCADE) |
| 45 | + problem = models.ForeignKey(Problem, null=True, on_delete=models.CASCADE) |
46 | 46 | score = models.IntegerField() |
47 | 47 | solved_time = models.DateField(auto_now_add=True) |
48 | 48 |
|
49 | 49 | class Meta: |
50 | 50 | db_table = "solvedproblem" |
51 | | - unique_together = (("user_id", "_id"),) |
| 51 | + unique_together = (("user", "problem"),) |
52 | 52 | ordering = ("-solved_time",) |
0 commit comments