1. 站内消息功能数据表
站内消息表表结构如下
在django的ORM中实现如下
class Message(models.Model):
MessageId = models.IntegerField(verbose_name='信息编号', primary_key=True)
MessageTitle = models.CharField(max_length=20, verbose_name='信息标题')
MessageString = models.CharField(max_length=100, verbose_name='信息内容')
MessageTime = models.DateTimeField(auto_now=True)# django的时间日期型,auto_now为是否将时间自动写入
class Meta:
db_table = 'Message'# 数据库中表的名字
verbose_name = '站内通知消息'# 在后台中显示的表的名称
对Message表进行数据迁移
#进行数据迁移
python manage.py makemigrations
python manage.py migrate
并且在后台中对模型进行注册
class MessageMessage(admin.ModelAdmin):
pass
admin.site.register(Message, MessageMessage)
2. 站内消息表接口实现
2.1 站内消息表接口逻辑实现
-
2.2 站内消息接口功能代码实现
2.2.1 在views中添加相关操作
def messages(request):
"""
接口作用: 返回给用户的所有站内消息
:param request:
:return:
"""
data = []
for i in Message.objects.all():
data.append({
'MessageTitle': i.MessageTitle,
'MessageString': i.MessageString,
'MessageTime': i.MessageTime.__str__()
})
return JsonResponse(data, safe=False)
2.2.2 在urls中添加相关操作
path('show/', views.messages, name='站内消息')
"""
name='站内消息',为django的接口的别名
"""
补充
对于如果要首页**弹**框的功能的话,我们只需要对views中的messages函数进行修改即可,修改内容如下
def messages(request):
"""
接口作用: 返回给用户的所有站内消息
:param request:
:return:
"""
data = []
for i in Message.objects.all().first():
data.append({
'MessageTitle': i.MessageTitle,
'MessageString': i.MessageString,
'MessageTime': i.MessageTime.__str__()
})
return JsonResponse(data, safe=False)