①:发送消息接口:
传入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
你的问题稍微笼统或者是有点大,你是不会写api接口,还是不会写消息处理的代码,还是中间处理数据遇到了什么问题,明确了具体问题,大家才能给你回答呀,很少有人愿意把你需要的全部代码写出来,如果你就是想要真个的代码的话,这个方式就不提倡了:偏懒。