:
下面是我们需要建表的基本信息:
Table : Problem
id : num
subscribe : text
test_case : varchar(200)
test_result : varchar(200)
submissions:num(16)
acceptences:num(16)
Table : User
id : num
mail : varchar(32)
name : varchar(16)
password : varchar(64)
Table : SubmitCode
id : num
user : User.id
problem : Problem.id
submit_code_text : text
submit_date : Date
condition : varchar(32)
Table : AcceptedCode
id : num
user : User.id
problem : Problem.id
accepted_code_text : text
accepted_date : Date
time_cost: num(16)
memory_cost: num(16)
Table : Discussion
id : num
user : User.id
problem : Problem.id
pub_date:Date
submit_text : text
vote_count :num
view _count: num
Table : Response
id :num
discussion :Discussion.id
user : User.id
pud_date:Date
res_text:text
vote_count:num
以下是代码:
from __future__ import unicode_literals
import datetime
from django.db import models
from django.utils import timezone
from django.utils.encoding import python_2_unicode_compatible
class Problem(models.Model):
problem_id = models.IntegerField(32)
subscribe = models.TexTField()
test_case = models.CharField(max_length=200)
test_result = models.CharField(max_length=200)
submissions = models.IntegerField(32)
acceptences = models.IntegerField(32)
class User(models.Model)
user_id = models.CharField(max_length=32)
user_mail = models.CharField(max_length=32)
user_name = models.CharField(max_length=32)
user_Password = models.CharField(max_length=64)
class SubmitCode(models.Model)
user_id = models.ForeignKey(User, on_delete=models.CASCADE)
problem_id = models.ForeignKey(Problem, on_delete=models.CASCADE)
submit_code_text = models.CharField(max_length=None[, **options])
submit_date = models.DateTimeField('date published')
Condition = models.CharField(max_length=32)
class AcceptedCode(models.Model)
user_id = models.ForeignKey(User, on_delete=models.CASCADE)
problem_id = models.ForeignKey(Problem, on_delete=models.CASCADE)
accepted_code_text = models.TextField()
accepted_date = models.DateTimeField('date published')
time_cost = models.FloatField([**options])
memory_cost = models.FloatField([**options])
class Discussion(models.Model)
discussion_id = models.IntegerField(32)
owner_id = models.ForeignKey(User, on_delete=models.CASCADE)
problem_id = models.ForeignKey(Problem, on_delete=models.CASCADE)
pub_date = models.DateTimeField('date published')
submit_text = models.TextField()
vote_count = models.IntegerField(default=0)
view_count = models.IntegerField(default=0)
class Response(models.Model)
response_id = models.IntegerField(32)
discussion_id = models.ForeignKey(Discussion, on_delete=models.CASCADE)
owner_id = models.ForeignKey(User, on_delete=models.CASCADE)
pub_date = models.DateTimeField('date published')
res_text = mmodels.TextField()
vote_count = models.IntegerField(default=0)