U api update

pull/22/head
vapao 2020-01-09 00:22:57 +08:00
parent 8ef0c905f8
commit fe4e715c31
2 changed files with 23 additions and 0 deletions

View File

@ -9,9 +9,17 @@ class App(models.Model, ModelMixin):
name = models.CharField(max_length=50)
key = models.CharField(max_length=50)
desc = models.CharField(max_length=255, null=True)
rel_apps = models.TextField(null=True)
rel_services = models.TextField(null=True)
created_at = models.CharField(max_length=20, default=human_datetime)
created_by = models.ForeignKey(User, on_delete=models.PROTECT)
def to_dict(self, *args, **kwargs):
tmp = super().to_dict(*args, **kwargs)
tmp['rel_apps'] = json.loads(self.rel_apps) if self.rel_apps else []
tmp['rel_services'] = json.loads(self.rel_services) if self.rel_services else []
return tmp
def __repr__(self):
return f'<App {self.name!r}>'

View File

@ -29,6 +29,21 @@ class AppView(View):
App.objects.create(created_by=request.user, **form)
return json_response(error=error)
def patch(self, request):
form, error = JsonParser(
Argument('id', type=int, help='参数错误'),
Argument('rel_apps', type=list, required=False),
Argument('rel_services', type=list, required=False)
).parse(request.body)
if error is None:
app = App.objects.filter(pk=form.id).first()
if not app:
return json_response(error='未找到指定应用')
app.rel_apps = json.dumps(form.rel_apps)
app.rel_services = json.dumps(form.rel_services)
app.save()
return json_response(error=error)
def delete(self, request):
form, error = JsonParser(
Argument('id', type=int, help='请指定操作对象')