
点击星标设置或取消。
path('set_star///', views.set_star, name='set_star')
def set_star(request, project_type, project_id):
来自武Sir的提醒:为了避免坏分子通过url修改其他人的星标,在视图函数中查找的时候,filter多加一个当前登录用户id的条件。
2. 申请加入与消息列表申请加入
用ajax提交表单,
自动序列化只需在data: $(‘定位到form’).serialize(),
手动序列化时需在字典中添加一条csrf_token的数据,
这边手动序列化是以为要把申请人,接收人,项目id一起传到视图函数。
csrfmiddlewaretoken:'{{ csrf_token }}',
否则会出现Forbidden (CSRF token missing or incorrect.)
因为自动序列化的时候,它帮我们添加进去了。
消息显示
只要进来了,就把该消息设置read为True,所以要传消息id
判断是同意还是拒绝,所以要传同意还是拒绝的标识
如果为同意,则增加一条项目成员表的数据,项目人数+1,并在消息表添加一条同意的消息(同意/拒绝写在content里)发给申请者;
如果为拒绝,则直接在消息列表添加一条拒绝消息发给申请者
同意和拒绝判断之前再加个消息类型判断,申请和邀请的同意时,增加项目成员的数据user_id是不一样的
我敲!好像传个消息id和是否同意就可以了!我在搞什么东西啊!重改一下,我像个睿智。。。
传那么多东西是没必要的,但是后台做的数据操作都是必要的。