野外泛在线考核系统(三)

野外泛在线考核系统(三)

二、笔记本端

接(二),继续完成Django的相关配置

(三)Django的配置

  1. 重新设置website的路径,因为原来的website在系统盘,而系统盘空间有限,决定将其转移到数据盘,便于后续放置上传的文件。就是直接复制过去,数据盘其实对应的是系统盘data这个文件夹
    在这里插入图片描述
    在这里插入图片描述
  2. 用Pycharm打开,可以直接运行
  3. 接着开始设计数据表,现在电子表格中进行设计,如图是ItemScore表的设计在这里插入图片描述
  4. 接着将设计的表转化到Lesson/models.py文件中
class TotalScore(models.Model):
  student = models.ForeignKey("Student", on_delete=models.CASCADE)
  lesson = models.ForeignKey("Lesson", on_delete=models.CASCADE)
  processScore = models.DecimalField(max_digits=5, decimal_places=2)
  finalScore = models.DecimalField(max_digits=5, decimal_places=2)
  totalScore = models.DecimalField(max_digits=5, decimal_places=2)
  scoreDate = models.DateField()

class IitemScore(models.Model):
  student = models.ForeignKey("Student", on_delete=models.CASCADE)
  item = models.ForeignKey("Item", on_delete=models.CASCADE)
  team = models.PositiveSmallIntegerField()
  role = models.ForeignKey("Role", on_delete=models.CASCADE)
  teacher = models.ForeignKey("Teacher", on_delete=models.CASCADE)
  itemScore = models.DecimalField(max_digits=5, decimal_places=2)
  itemDate = models.DateField()

class Item(models.Model):
  itemLevel_choices = (
      (0, "一级考核课目"),
      (1, "二级考核课目"),
      (2, "三级考核课目"),
      (3, "四级考核课目"),
  )
  itemType_choices = (
      (0, "A考核"),
      (1, "B考核"),
  )
  itemID = models.CharField(max_length=32)
  itemName = models.CharField(max_length=32)
  itemLevel = models.SmallIntegerField(choices=itemLevel_choices)
  itemType = models.SmallIntegerField(choices=itemType_choices)
  itemWeight = models.DecimalField(max_digits=5, decimal_places=2)
  lesson = models.ForeignKey("Lesson", on_delete=models.CASCADE)


class Student(models.Model):
  gender_choices = (
      (0, "女"),
      (1, "男"),
  )
  studentID = models.CharField(max_length=32)
  studentName = models.CharField(max_length=32)
  studentGender = models.SmallIntegerField(choices=gender_choices)
  studentPhoto = models.ImageField()

class Teacher(models.Model):
  gender_choices = (
      (0, "女"),
      (1, "男"),
  )
  teacherID = models.CharField(max_length=32)
  teacherName = models.CharField(max_length=32)
  teacherGender = models.SmallIntegerField(choices=gender_choices)
  teacherPhoto = models.ImageField()

class Lesson(models.Model):
  lessonID = models.CharField(max_length=32)
  lessonName = models.CharField(max_length=32)
  lessonWeight = models.DecimalField(max_digits=5, decimal_places=2)

class Role(models.Model):
  roleID = models.CharField(max_length=32)
  roleName = models.CharField(max_length=32)
  roleWeight = models.DecimalField(max_digits=5, decimal_places=2)
  equip = models.ForeignKey("Equip", on_delete=models.CASCADE)

class Equip(models.Model):
  equipID = models.CharField(max_length=32)
  equipName = models.CharField(max_length=32)
  equipPhoto = models.ImageField()
  1. 然后在命令行执行以下命令
$ python3 manage.py migrate   # 创建表结构
$ python3 manage.py makemigrations Lesson  # 让 Django 知道我们在我们的模型有一些变更
$ python3 manage.py migrate Lesson   # 创建表结构
  1. 接下来在Lesson/views.py,插入数据和显示的数据
def add_Equip(request):
   equip = models.Equip(equipID="001",equipName="冲锋衣",equipPhoto="菜鸟出版社")
   equip.save()
   return HttpResponse("<p>数据添加成功!</p>")

def list_Equip(request):
   equip = models.Equip.objects.values_list("equipID", "equipName","equipPhoto")
   print(equip)
   print(equip[0][0], type(equip))  # 得到的是第一条记录的price字段的数据
   content = {}
   content['hello'] = equip[0][2]
   return render(request, 'index.html', content)
  1. 修改Lesson/urls.py
from django.urls import path
from . import views
urlpatterns = [
    path('', views.index),
    path('add_Equip', views.add_Equip),
    path('list_Equip', views.list_Equip),
]
  1. 而后测试添加数据和显示数据的结果
    在这里插入图片描述
    到此,算是基本把数据库整差不多了,接下来继续完善其他设置
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值