文章增加分类 标签

#增加文章 分类 标签
    
    - 前端
        - 循环分类列表  
            - 每个分类是一个input 类型redia value为id
        - 循环标签列表
            - 每个标签是一个input 类型checkbox value为id

    - 后端

        POST
            - 获取前端传来的 分类名称  标签名称(列表)
            - 插入分类的文章
                - 无论是否获取到分类 都插入数据
            - 插入文章对应的标签关系                   09:05-09:20
                - 判断是否有标签
                    - 方式一: 淘汰
                        - 根据文章的对象 obj.add([标签]) 这种方法不可以 因为第三张表是自己创建的
                    - 方式二:
                        - 循环获取到的标签列表 在标签第三张表插入数据
        GET
            - 找到这个用户的分类
                cate_list=models.category.objects.fileter(blog__uesr=request.user)
            - 找到这个用户的标签
                tag_list=models.Tag.obfects.filter(blog__user=request.user)
            - 返回前端

        
#中介模型  09:20-09:40

    - http://www.cnblogs.com/yuanchenqi/articles/7570003.html#_label1
    - 为什么创建中介模型

    - 举例
        - 学生和课程表
            class Person(models.Model):
                name = models.CharField(max_length=128)
                courses = members = models.ManyToManyField("Person")
            class Courses(models.Model):
                name = models.CharField(max_length=128)
            - 多对多关系    每个学生报很多课程
                persion = models.objects.filter(user=“老妖”).first
                persion.courses.all()            #查询
                persion.courses.add([1,2,3])    #增加

            - 现在有一个需求  增加学生报名的原因 介绍人等等字段
                class Person(models.Model):
                    name = models.CharField(max_length=128)
                    courses = members = models.ManyToManyField("Person",through='C2P')
                class Courses(models.Model):
                    name = models.CharField(max_length=128)
                class C2P(models.Model):
                    person = models.ForeignKey(Person)
                    courses = models.ForeignKey(courses)
                    reasion = models.CharField(max_length=128)   #增加字段

                - 此时不可以通过ManytoMany自动创建第三张表 所以需要手动创建第三张表哦 增加原因 介绍人字段
                - 第三张表增加字段时候需要循环创建第三张表

 

posted @ 2017-12-01 11:04  golangav  阅读(337)  评论(0编辑  收藏  举报