仓库初始化
This commit is contained in:
commit
83cbe007ba
60 files changed
+5190
No files matched your search
@@ -0,0 +1 @@
|
||||
from .models import *
|
||||
@@ -0,0 +1,82 @@
|
||||
from sqlalchemy import Column, Integer, String, JSON, Text, ForeignKey, DateTime, Boolean, CHAR
|
||||
from sqlalchemy.ext.declarative import declarative_base
|
||||
|
||||
Base = declarative_base()
|
||||
|
||||
|
||||
#角色表定义
|
||||
class Character(Base):
|
||||
__tablename__ = 'character'
|
||||
|
||||
id = Column(Integer, primary_key=True, autoincrement=True)
|
||||
voice_id = Column(Integer, nullable=False)
|
||||
avatar_id = Column(String(36), nullable=False)
|
||||
background_ids = Column(String(255), nullable=False)
|
||||
name = Column(String(36), nullable=False)
|
||||
wakeup_words = Column(String(255), nullable=False)
|
||||
world_scenario = Column(Text, nullable=False)
|
||||
description = Column(Text, nullable=False)
|
||||
emojis = Column(JSON, nullable=False)
|
||||
dialogues = Column(Text, nullable=False)
|
||||
|
||||
def __repr__(self):
|
||||
return f"<Character(id={self.id}, name={self.name}, avatar_id={self.avatar_id})>"
|
||||
|
||||
|
||||
#用户表定义
|
||||
class User(Base):
|
||||
__tablename__ = 'user'
|
||||
|
||||
id = Column(Integer, primary_key=True, autoincrement=True)
|
||||
created_at = Column(DateTime, nullable=True)
|
||||
updated_at = Column(DateTime, nullable=True)
|
||||
deleted_at = Column(DateTime, nullable=True)
|
||||
open_id = Column(String(255), nullable=True)
|
||||
username = Column(String(64), nullable=True)
|
||||
avatar_id = Column(String(36), nullable=True)
|
||||
tags = Column(JSON)
|
||||
persona = Column(JSON)
|
||||
|
||||
def __repr__(self):
|
||||
return f"<User(id={self.id}, tags={self.tags})>"
|
||||
|
||||
|
||||
#硬件表定义
|
||||
class Hardware(Base):
|
||||
__tablename__ = 'hardware'
|
||||
|
||||
id = Column(Integer, primary_key=True, autoincrement=True)
|
||||
user_id = Column(Integer, ForeignKey('user.id'))
|
||||
mac = Column(String(17))
|
||||
firmware = Column(String(16))
|
||||
model = Column(String(36))
|
||||
|
||||
def __repr__(self):
|
||||
return f"<Hardware( mac={self.mac})>"
|
||||
|
||||
|
||||
#用户角色表定义
|
||||
class UserCharacter(Base):
|
||||
__tablename__ = 'user_character'
|
||||
|
||||
id = Column(Integer, primary_key=True, autoincrement=True)
|
||||
user_id = Column(Integer, ForeignKey('user.id'))
|
||||
character_id = Column(Integer, ForeignKey('character.id'))
|
||||
persona = Column(JSON)
|
||||
|
||||
def __repr__(self):
|
||||
return f"<UserCharacter(id={self.id}, user_id={self.user_id}, character_id={self.character_id})>"
|
||||
|
||||
|
||||
#Session表定义
|
||||
class Session(Base):
|
||||
__tablename__ = 'session'
|
||||
|
||||
id = Column(CHAR(36), primary_key=True)
|
||||
user_character_id = Column(Integer, ForeignKey('user_character.id'))
|
||||
content = Column(Text)
|
||||
last_activity = Column(DateTime())
|
||||
is_permanent = Column(Boolean)
|
||||
|
||||
def __repr__(self):
|
||||
return f"<Session(id={self.id}, user_character_id={self.user_character_id})>"
|
||||
Reference in new issue
Block a user