Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
D
dify
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ai-tech
dify
Commits
24672492
Commit
24672492
authored
Jun 27, 2023
by
crazywoola
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: add delete api to console
parent
0462f09e
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
75 additions
and
0 deletions
+75
-0
conversation.py
api/controllers/console/app/conversation.py
+41
-0
d3d503a3471c_add_is_deleted_to_conversations.py
.../versions/d3d503a3471c_add_is_deleted_to_conversations.py
+32
-0
model.py
api/models/model.py
+2
-0
No files found.
api/controllers/console/app/conversation.py
View file @
24672492
...
...
@@ -209,6 +209,26 @@ class CompletionConversationDetailApi(Resource):
conversation_id
=
str
(
conversation_id
)
return
_get_conversation
(
app_id
,
conversation_id
,
'completion'
)
@
setup_required
@
login_required
@
account_initialization_required
def
delete
(
self
,
app_id
,
conversation_id
):
app_id
=
str
(
app_id
)
conversation_id
=
str
(
conversation_id
)
app
=
_get_app
(
app_id
,
'chat'
)
conversation
=
db
.
session
.
query
(
Conversation
)
\
.
filter
(
Conversation
.
id
==
conversation_id
,
Conversation
.
app_id
==
app
.
id
)
.
first
()
if
not
conversation
:
raise
NotFound
(
"Conversation Not Exists."
)
db
.
session
.
delete
(
conversation
)
db
.
session
.
commit
()
return
{
'result'
:
'success'
},
204
class
ChatConversationApi
(
Resource
):
...
...
@@ -356,6 +376,27 @@ class ChatConversationDetailApi(Resource):
conversation_id
=
str
(
conversation_id
)
return
_get_conversation
(
app_id
,
conversation_id
,
'chat'
)
@
setup_required
@
login_required
@
account_initialization_required
def
delete
(
self
,
app_id
,
conversation_id
):
app_id
=
str
(
app_id
)
conversation_id
=
str
(
conversation_id
)
# get app info
app
=
_get_app
(
app_id
,
'chat'
)
conversation
=
db
.
session
.
query
(
Conversation
)
\
.
filter
(
Conversation
.
id
==
conversation_id
,
Conversation
.
app_id
==
app
.
id
)
.
first
()
if
not
conversation
:
raise
NotFound
(
"Conversation Not Exists."
)
db
.
session
.
delete
(
conversation
)
db
.
session
.
commit
()
return
{
'result'
:
'success'
},
204
...
...
api/migrations/versions/d3d503a3471c_add_is_deleted_to_conversations.py
0 → 100644
View file @
24672492
"""add is_deleted to conversations
Revision ID: d3d503a3471c
Revises: e32f6ccb87c6
Create Date: 2023-06-27 19:13:30.897981
"""
from
alembic
import
op
import
sqlalchemy
as
sa
# revision identifiers, used by Alembic.
revision
=
'd3d503a3471c'
down_revision
=
'e32f6ccb87c6'
branch_labels
=
None
depends_on
=
None
def
upgrade
():
# ### commands auto generated by Alembic - please adjust! ###
with
op
.
batch_alter_table
(
'conversations'
,
schema
=
None
)
as
batch_op
:
batch_op
.
add_column
(
sa
.
Column
(
'is_deleted'
,
sa
.
Boolean
(),
server_default
=
sa
.
text
(
'false'
),
nullable
=
False
))
# ### end Alembic commands ###
def
downgrade
():
# ### commands auto generated by Alembic - please adjust! ###
with
op
.
batch_alter_table
(
'conversations'
,
schema
=
None
)
as
batch_op
:
batch_op
.
drop_column
(
'is_deleted'
)
# ### end Alembic commands ###
api/models/model.py
View file @
24672492
...
...
@@ -206,6 +206,8 @@ class Conversation(db.Model):
messages
=
db
.
relationship
(
"Message"
,
backref
=
"conversation"
,
lazy
=
'select'
,
passive_deletes
=
"all"
)
message_annotations
=
db
.
relationship
(
"MessageAnnotation"
,
backref
=
"conversation"
,
lazy
=
'select'
,
passive_deletes
=
"all"
)
is_deleted
=
db
.
Column
(
db
.
Boolean
,
nullable
=
False
,
server_default
=
db
.
text
(
'false'
))
@
property
def
model_config
(
self
):
model_config
=
{}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment