Compatible with the situation where there is no user information. (#1792)

Co-authored-by: jyong <jyong@dify.ai>
This commit is contained in:
Jyong 2023-12-19 17:47:25 +08:00 committed by GitHub
parent 10fc44e2af
commit 185c2f86cd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 13 additions and 3 deletions

View File

@ -31,8 +31,9 @@ annotation_fields = {
}
annotation_hit_history_fields = {
'annotation_id': fields.String,
'annotation_create_account': fields.Nested(account_fields, allow_null=True)
'annotation_id': fields.String(attribute='id'),
'annotation_create_account': fields.Nested(account_fields, allow_null=True),
'created_at': TimestampField
}
message_file_fields = {

View File

@ -531,7 +531,11 @@ class Message(db.Model):
def annotation_hit_history(self):
annotation_history = (db.session.query(AppAnnotationHitHistory)
.filter(AppAnnotationHitHistory.message_id == self.id).first())
return annotation_history
if annotation_history:
annotation = (db.session.query(MessageAnnotation).
filter(MessageAnnotation.id == annotation_history.annotation_id).first())
return annotation
return None
@property
def app_model_config(self):
@ -659,6 +663,11 @@ class MessageAnnotation(db.Model):
account = db.session.query(Account).filter(Account.id == self.account_id).first()
return account
@property
def annotation_create_account(self):
account = db.session.query(Account).filter(Account.id == self.account_id).first()
return account
class AppAnnotationHitHistory(db.Model):
__tablename__ = 'app_annotation_hit_histories'