Ejemplo n.º 1
0
class Attendance(Base):
    # 考勤??
    __tablename__ = 'attendance'
    att_time = models.Column(models.Date)
    status = models.Column(models.Integer, default=1)
    students_id = models.Column(models.Integer,
                                models.ForeignKey('student.id'))
Ejemplo n.º 2
0
class Grade(BaseModel):
    __tablename__ = 'grade'
    #id = models.Column(models.Integer, primary_key=True, autoincrement=True)
    grade = models.Column(models.Float, default=0)  #默认有的课程没有成绩
    course_id = models.Column(models.Integer, models.ForeignKey('course.id'))
    student_id = models.Column(models.Integer,
                               models.ForeignKey('students.id'))
Ejemplo n.º 3
0
class Grade(BaseModel):  #成绩表,课程、学员关联此表
    __tablename = "grade"
    grade = models.Column(models.Float)
    course_id = models.Column(models.Integer, models.ForeignKey("course.id"))
    # course_label = models.Column(models.String, models.ForeignKey("course.label"))
    student_id = models.Column(models.Integer,
                               models.ForeignKey("students.id"))
Ejemplo n.º 4
0
class Students(BaseModel):  #学生表
    __tablename__ = "students"  #表名称
    name = models.Column(models.String(32))
    age = models.Column(models.Integer)
    gender = models.Column(models.Integer)  #0 男 1 女 2 unknown
    student_id = models.Column(models.Integer,
                               models.ForeignKey("user.identify_id"))
Ejemplo n.º 5
0
class Attendance(BaseModel):
    __tablename__ = 'attendance'
    #id = models.Column(models.Integer, primary_key=True, autoincrement=True)
    att_time = models.Column(models.Date)
    status = models.Column(models.Integer, default=1)  #0迟到1正常出勤2早退3请假4旷课
    student_id = models.Column(models.Integer,
                               models.ForeignKey('students.id'))  #考勤与学生多对一关系
Ejemplo n.º 6
0
class Teacher(Base):
    __tablebname__ = "teacher"

    name = models.Column(models.String(32))
    age = models.Column(models.Integer)
    gender = models.Column(models.Integer, default=1)  # 1 男,2 女 ,3 未知
    course_id = models.Column(models.Integer, models.ForeignKey("course.id"))
Ejemplo n.º 7
0
class Score(Base):
    __tablebname__ = "score"

    name = models.Column(models.String(32), unique=True)
    course_id = models.Column(models.Integer, models.ForeignKey("course.id"))
    students_id = models.Column(models.Integer,
                                models.ForeignKey("students.id"))
Ejemplo n.º 8
0
class Students(BaseModel):  #继承BaseModel中的方法
    """
    学员表
    """
    __tablename__ = 'students'  #设置数据表的名称
    name = models.Column(models.String(32))  #设置对应的字段
    age = models.Column(models.Integer)
    gender = models.Column(models.Integer)  #0男 1女 -1未知
Ejemplo n.º 9
0
class Students(BaseModel):
    """
    学员表
    """
    __tablename__ = "students"
    name = models.Column(models.String(32))
    age = models.Column(models.Integer)
    gender = models.Column(models.Integer,default = 13) #0 男 1女 -1 unknown
Ejemplo n.º 10
0
class Teachers(BaseModel):  #教师表
    __tablename__ = "teacher"
    username = models.Column(models.String(32))
    age = models.Column(models.Integer)
    gender = models.Column(models.String(32))
    course_id = models.Column(models.Integer, models.ForeignKey("course.id"))
    teacher_id = models.Column(models.Integer,
                               models.ForeignKey("user.identify_id"))
Ejemplo n.º 11
0
class Clock(Base):
    __tablebname__ = "clock"

    att_time = models.Column(models.Date)
    status = models.Column(models.Integer,
                           default=1)  #1 正常出勤 2,迟到 3,早退 4 ,请假 5,旷课
    student_id = models.Column(models.Integer,
                               models.ForeignKey("students.id"))
Ejemplo n.º 12
0
class Curriculum(BaseModel):
    __tablename__ = "curriculum"
    c_id = models.Column(models.String(32))
    c_name = models.Column(models.String(32))
    c_time = models.Column(models.Date)

    def __repr__(self):
        return self.c_name
Ejemplo n.º 13
0
class Kaoqin(BaseModel):
    __tablename__ = 'kaoqin'
    kao_time = models.Column(models.Date)
    status = models.Column(models.Integer,
                           default=1)  #0 迟到 1 正常 2 早退 3 请假 4 旷课
    student_id = models.Column(models.Integer, models.ForeignKey('student.id'))


# models.create_all()

# 学员、课程表
# class Stu_Cou(BaseModel):
#     __tablename__ = 'stu_cou'
#     course_id = models.Column(models.Integer,models.ForeignKey('course.id'))
#     student_id = models.Column(models.Integer,models.ForeignKey('student.id'))

# models.drop_all()
# models.create_all()
# course = Course(lable='python',description='lll')
# course.save()
# course1 = Course(lable='ui',description='hao')
# course1.save()
# course2 = Course(lable='java',description='oo')
# course2.save()
# stu = Student(name='xioali',age=18,gender='男')
# stu.save()
# stu1 = Student(name='lo',age=20,gender='女')
# stu1.save()
# stu.to_course = [course]
# stu.save()
# stu1.to_course = [course1,course2]
# stu1.save()
# course2 = Course()
# course2.lable = 'java'
# course2.description = '不行啊'
# course3 = {'lable':'UI','description':'好多美女'}
# course4 = Course(**course3)
# session.add_all([course2,course4])
# session.commit()
# Teacher(name='老陈',age=25,gender='男',course_id=2).save()
# t = Teacher.query.get(1).delete_obj()

# teachers = Teacher.query.all()
# teacher = Teacher.query.filter_by(age = 18).all()
# teacher = Teacher.query.get(4)
# teacher = Teacher.query.order_by(Teacher.age.desc()).all()
# print(teacher)
# teacher = Teacher.query.get(3)
# teacher.name = '老李'
# models.session.commit()
# teacher = Teacher.query.offset(0).limit(2).all()
# print(teacher)
# teacher = Teacher.query.group_by('age').all()
# print(teacher)
# c = Course.query.get(1)
# print(c.to_teacher)
# t = Teacher.query.get(1)
# print(t.to_course1)
Ejemplo n.º 14
0
class Grade(BaseModel):
    """
    课程,学员
    """
    __tablename__ = 'grade'
    grade = models.Column(models.Float, default=0)
    course_id = models.Column(models.Integer, models.ForeignKey('course.id'))
    student_id = models.Column(models.Integer,
                               models.ForeignKey('students.id'))
Ejemplo n.º 15
0
class Attendance(BaseModel):
    """
    考勤表,记录是否请假
    """
    __tablename__ = 'attendance'
    att_time = models.Column(models.Date)
    status = models.Column(models.Integer, default=1)  #0迟到,1是正常出勤,2早退,3请假,4旷课
    student_id = models.Column(models.Integer,
                               models.ForeignKey('students.id'))  #考勤,学生多对一映射
Ejemplo n.º 16
0
class Attendance(BaseModel):
    """
    考勤表,记录是否请假
    学员
    """
    __tablename__ = "attendance"
    att_time = models.Column(models.Date)
    status = models.Column(models.Integer,default = 1) #0 迟到  1 正常出勤  2 早退  3 请假  4 旷课
    student_id = models.Column(models.Integer, models.ForeignKey("students.id"))
Ejemplo n.º 17
0
class Grade(BaseModel):
    """
    成绩表
    课程,学员关联此表
    """
    __tablename__ = "grade"
    grade = models.Column(models.Float, default=0)
    course_id = models.Column(models.Integer, models.ForeignKey("course.id"))
    student_id = models.Column(models.Integer, models.ForeignKey("students.id"))
Ejemplo n.º 18
0
 def mock_read_all(*args):
     mock_col1 = models.Column(id=1,
                               column_name='Test',
                               column_pos=0,
                               project_id=1)
     mock_col2 = models.Column(id=2,
                               column_name='Deploy',
                               column_pos=1,
                               project_id=1)
     return [mock_col1, mock_col2]
Ejemplo n.º 19
0
class Teachers(BaseModel):
    """
    教师
    老师与课程是多对一关系
    """
    __tablename__ = "teachers"
    name = models.Column(models.String(32))
    age = models.Column(models.Integer)
    gender = models.Column(models.Integer,default = 3)  # 0 男 1女 -1 unknown
    course_id = models.Column(models.Integer, models.ForeignKey("course.id")) #教师多对一 映射表是课程
Ejemplo n.º 20
0
class Teacher(BaseModel):
    """
    教师表
    教师与课程多对一
    """
    __tablename__ = 'teachers'
    name = models.Column(models.String(32))
    age = models.Column(models.Integer)
    gender = models.Column(models.Integer)  #0男 1女 -1未知
    course_id = models.Column(models.Integer,
                              models.ForeignKey('course.id'))  #教师,课程多对一映射
Ejemplo n.º 21
0
class Course(Base):
    __tablebname__ = "course"
    name = models.Column(models.String(32), unique=True)
    description = models.Column(models.Text)
    to_teacher = models.relationship("Teacher", backref="to_course_data")

    to_student = models.relationship("Students",
                                     secondary=Stu_Cou,
                                     backref=models.backref("to_course",
                                                            lazy="dynamic"),
                                     lazy="dynamic")
Ejemplo n.º 22
0
class Course(BaseModel):
    __tablename__ = 'course'
    lable = models.Column(models.String(32))
    description = models.Column(models.Text)

    to_teacher = models.relationship('Teacher', backref='to_course1')

    to_student = models.relationship('Student',
                                     secondary=Stu_Cou,
                                     backref=models.backref('to_course',
                                                            lazy='dynamic'),
                                     lazy='dynamic')
Ejemplo n.º 23
0
class Students(BaseModel):

    __tablename__ = 'students'  #学生表名
    #id=models.Column(models.Integer,primary_key=True,autoincrement=True)#学生id
    name = models.Column(models.String(32))  #学生姓名
    age = models.Column(models.Integer)  #学生年龄
    gender = models.Column(models.Integer)  #学生性别
    has_id = models.Column(models.Integer, nullable=True)  #1是有id,0是没有id
    has_school = models.Column(models.Integer, default=1)  #1是有学籍,0是没有学籍
    #与考勤表是一对多的关系
    to_attendance = models.relationship('Attendance', backref='to_students')
    #与假条表是一对多的关系
    to_ask = models.relationship('Ask', backref='to_students')
Ejemplo n.º 24
0
class VacationTip(BaseModel):
    __tablename__ = "vacationTip"
    vacation_id = models.Column(models.Integer)
    vacation_name = models.Column(models.String(32))
    vacation_type = models.Column(models.String(32))
    vacation_start = models.Column(models.String(32))
    vacation_deadline = models.Column(models.String(32))
    vacation_description = models.Column(models.Text)
    vacation_phone = models.Column(models.String(32))
    vacation_status = models.Column(models.Integer)
    vacation_day = models.Column(models.Integer)
Ejemplo n.º 25
0
class Leave(BaseModel):
    __tablename__ = "leave"
    request_id = models.Column(models.Integer)  #请假人id
    request_name = models.Column(models.String(32))  #请假人姓名
    request_type = models.Column(models.String(32))  #请假类型
    request_start_time = models.Column(models.String(32))  #起始时间
    request_end_time = models.Column(models.String(32))  #结束时间
    request_days = models.Column(models.String(32))  #请假天数
    request_description = models.Column(models.Text)  #请假原因
    request_phone = models.Column(models.String(32))  #联系方式
    request_status = models.Column(models.String(32))  #假条状态
Ejemplo n.º 26
0
def test_update_column(column_id: int, column_name: str, status_code: int,
                       field: str, value: Union[str, dict], monkeypatch,
                       test_app: TestClient):

    mock_column = models.Column(id=1,
                                column_name='Pre-Change',
                                column_pos=0,
                                project_id=1)

    def mock_read(*args):
        if column_id == 0:
            return None
        return mock_column

    def mock_update(*args):
        mock_column.column_name = column_name
        return mock_column

    monkeypatch.setattr(crud, 'read', mock_read)
    monkeypatch.setattr(crud, 'update', mock_update)

    payload = json.dumps({'column': {'column_name': column_name}})
    response = test_app.put(f'/columns/{column_id}', data=payload)
    assert response.status_code == status_code
    assert response.json()[field] == value
Ejemplo n.º 27
0
class Course(BaseModel):
    __tablename__ = 'course'  # 课程表名
    #id = models.Column(models.Integer, primary_key=True, autoincrement=True)
    lable = models.Column(models.String(32))
    description = models.Column(models.Text)
    updatetime = models.Column(models.DateTime, default=datetime.timezone)
    #反向映射字段,一对多关系查询
    to_teacher = models.relationship(
        'Teacher',  #映射表
        backref='to_course',  #反向映射字段,通过该字段查询当表的内容
        lazy='dynamic')
    #多对多关系查询
    to_students = models.relationship('Students',
                                      secondary=Stu_Cou,
                                      backref=models.backref("to_course",
                                                             lazy='dynamic'),
                                      lazy='dynamic')
Ejemplo n.º 28
0
class Base(models.Model):
    __abstract__ = True
    id = models.Column(models.Integer, primary_key=True, autoincrement=True)

    def saved(self):
        db = models.session()
        db.add(self)
        db.commit()
Ejemplo n.º 29
0
class Teacher(BaseModel):
    __tablename__ = 'teacher'
    #id = models.Column(models.Integer, primary_key=True, autoincrement=True)
    name = models.Column(models.String(32))  # 老师姓名
    age = models.Column(models.Integer)  # 老师年龄
    gender = models.Column(models.Integer)  # 老师性别0男,1女,-1不知道
    description = models.Column(models.Text)  #老师简介信息
    course_id = models.Column(models.Integer,
                              models.ForeignKey('course.id'))  #专业与老师一对多关系
    # 多对多关系查询
    to_students = models.relationship('Students',
                                      secondary=Stu_Tea,
                                      backref=models.backref("to_teacher",
                                                             lazy='dynamic'),
                                      lazy='dynamic')
    # 与假条表是一对多的关系
    to_ask = models.relationship('Ask', backref='to_teacher')
Ejemplo n.º 30
0
class Course(BaseModel):  #课程表
    __tablename = "course"
    label = models.Column(models.String(32))
    description = models.Column(models.Text)
    #双向映射
    to_teachers = models.relationship(  #relationship关联关系relationship
        'Teachers',  #映射类的名称和类名一致#双向映射
        backref='to_course')
    #教师类映射到该表
    #双向映射语法(一对多):字段名=models.relationship(
    #"映射的类名",
    #backref="本表名")
    to_student = models.relationship(
        "Students",
        secondary=Stu_Cou,  #多对多关系表
        backref=models.backref("to_course", lazy="dynamic"),
        lazy="dynamic")