python - 开发几个API,只会一些基本的,有几个没有头绪,该从哪入手?

 坐着驴车追宝马 发布于 2022-10-28 18:38

①:发送消息接口:
传入JSON:接收来自前端的消息相关内容(如接收者ID,消息title,消息内容等)
返回JSON:状态码和相关信息
②:某用户收到的消息列表接口:
根据用户ID获取用户收到的消息,只取非删除消息。
返回JSON:用户所有消息
说明:该接口需要分页获取数据,并且可分别获取已读和未读消息
③:删除消息接口:
根据消息ID,删除消息

自己按官方文档写了两个,不过不符合要求,请问这几个接口怎么写?或者有类似的实例,能否给个链接。

url.py


#-*- coding:utf-8 -*-
from django.conf.urls import url, include`请输入代码`
from rest_framework import routers, serializers, viewsets
from django.contrib import admin
from just_pt.demo.models import *


#所有用户信息接口
class Usermessage(serializers.HyperlinkedModelSerializer):
    class Meta:
        model = UserMessage
        fields = ('recv_user', 'send_user', 'readed', 'status','create_time','message')


class UserMessageViewSet(viewsets.ModelViewSet):
    queryset = UserMessage.objects.all()
    serializer_class = Usermessage

#所有信息接口
class Message1(serializers.HyperlinkedModelSerializer):
    class Meta:
        model = Message
        fields = ('status', 'title', 'content', 'category')


class MessageSet(viewsets.ModelViewSet):
    queryset = Message.objects.all()
    serializer_class = Message1

#发送信息接口
#用户收取信息接口
#删除信息接口
router = routers.DefaultRouter()
router.register(r'users', UserMessageViewSet)
router.register(r'message', MessageSet)



# Wire up our API using automatic URL routing.
# Additionally, we include login URLs for the browsable API.
urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^', include(router.urls)),
    url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework'))
]

models.py


# -*- coding: utf-8 -*-
# Apr.26.2016
from django.db import models
class Message(models.Model):
    """ 消息
    status:消息状态(0:正常,1:删除),默认为0;
    title:消息标题;
    content:消息内容;
    categoriy:消息类型(0:系统消息,1:用户消息),demo考虑0即可
    """
    status = models.SmallIntegerField(verbose_name=u'状态', default=0)
    title = models.CharField(verbose_name=u'消息标题', max_length=64)
    content = models.TextField(verbose_name=u'消息内容', null=True, blank=True)
    category = models.PositiveSmallIntegerField(verbose_name=u'消息类型',
                                                default=0)
    def __unicode__(self):
        return u'%s' % self.title

class UserMessage(models.Model):
    """ 用户消息
    recv_user:接收者(用户ID);
    send_user:发送者(用户ID),系统消息时用户ID为1;
    readed:消息是否已读;
    status:消息状态(0:正常,1:删除);
    create_time:消息发送时间;
    message:消息外键
    """
    recv_user = models.IntegerField(verbose_name=u'接收者', null=True, blank=True)
    send_user = models.IntegerField(verbose_name=u'发送者', null=True, blank=True)
    readed = models.BooleanField(verbose_name=u'已读', default=False)
    status = models.IntegerField(verbose_name=u'记录状态', default=0)
    create_time = models.DateTimeField(verbose_name=u'创建时间', auto_now_add=True)
    message 
1 个回答
  • 你的问题稍微笼统或者是有点大,你是不会写api接口,还是不会写消息处理的代码,还是中间处理数据遇到了什么问题,明确了具体问题,大家才能给你回答呀,很少有人愿意把你需要的全部代码写出来,如果你就是想要真个的代码的话,这个方式就不提倡了:偏懒。

    2022-10-30 03:07 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有