feat: session.Task model add `kwargs` field (记录kill_session的用户名称)

pull/6566/head
Bai 2021-07-29 14:53:04 +08:00 committed by Jiangjie.Bai
parent bff3582136
commit 7892e50aa2
3 changed files with 23 additions and 2 deletions

View File

@ -31,7 +31,9 @@ class KillSessionAPI(APIView):
if session and not session.is_finished:
validated_session.append(session_id)
self.model.objects.create(
name="kill_session", args=session.id,
terminal=session.terminal,
name="kill_session", args=session.id, terminal=session.terminal,
kwargs={
'terminated_by_user': str(request.user)
}
)
return Response({"ok": validated_session})

View File

@ -0,0 +1,18 @@
# Generated by Django 3.1.6 on 2021-07-29 06:06
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('terminal', '0037_auto_20210623_1748'),
]
operations = [
migrations.AddField(
model_name='task',
name='kwargs',
field=models.JSONField(default=dict, verbose_name='Kwargs'),
),
]

View File

@ -15,6 +15,7 @@ class Task(models.Model):
id = models.UUIDField(default=uuid.uuid4, primary_key=True)
name = models.CharField(max_length=128, choices=NAME_CHOICES, verbose_name=_("Name"))
args = models.CharField(max_length=1024, verbose_name=_("Args"))
kwargs = models.JSONField(default=dict, verbose_name=_("Kwargs"))
terminal = models.ForeignKey(Terminal, null=True, on_delete=models.SET_NULL)
is_finished = models.BooleanField(default=False)
date_created = models.DateTimeField(auto_now_add=True)