删除地址前逻辑(作业)
1. 删除地址接口设计和定义
1.请求方式
| 选项 | 方案 |
|---|---|
| 请求方法 | DELETE |
| 请求地址 | /addresses/<address_id>/ |
2.请求参数:路径参数
| 参数名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| address_id | string | 是 | 要修改的地址ID(路径参数) |
3.响应结果:JSON
| 字段 | 说明 |
|---|---|
| code | 状态码 |
| errmsg | 错误信息 |
2. 删除地址后端逻辑实现
提示:
- 删除地址不是物理删除,是逻辑删除。
class UpdateDestroyAddressView(LoginRequiredJSONMixin, View):
"""修改和删除地址"""
def put(self, request, address_id):
"""修改地址"""
......
def delete(self, request, address_id):
"""删除地址"""
try:
# 查询要删除的地址
address = Address.objects.get(id=address_id)
# 将地址逻辑删除设置为True
address.is_deleted = True
address.save()
except Exception as e:
logger.error(e)
return http.JsonResponse({'code': 400, 'errmsg': '删除地址失败'})
# 响应删除地址结果
return http.JsonResponse({'code': 0, 'errmsg': '删除地址成功'})