V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ChiangDi
V2EX  ›  Django

Django 收藏功能的实现

  •  
  •   ChiangDi · 2014-08-10 17:34:09 +08:00 · 3656 次点击
    这是一个创建于 3549 天前的主题,其中的信息可能已经有所发展或是发生改变。
    是这样的,我的 Django 项目里的用户可以发图片。
    我想实现一个收藏功能,就是用户可以收藏其他用户发布的图片。
    粗略想了下,model应该这样写:

    class FavoritePicture(models.Model):
    user = models.ForeignKey(User)
    picture = models.ForeignKey(Pictures)
    created_on = models.DateTimeField(auto_now_add=True)

    def __unicode__(self):
    return "%s likes picture %s" % (self.user, self.picture)

    但是它的views.py里面应该要怎么写呢?刚学 Django 不太懂,求指教...
    2 条回复    2014-08-11 10:03:30 +08:00
    chaoyj
        1
    chaoyj  
       2014-08-10 20:08:16 +08:00
    一个用户收藏多个图片,模型是多条user -picture 记录,还是picture 保存数组。
    如果是单独记录的话,
    点击收藏之后,首先判断数据库中有没有对应的user -picture记录,如果没有,就加入。
    如果picture是数组,首先取出来,分割,判断是否有匹配,没有找到匹配项之后再更新picture。
    no13bus
        2
    no13bus  
       2014-08-11 10:03:30 +08:00
    可以看看3n1b的开源论坛 样子和v2ex很像,里面也有收藏的功能。我觉得你要的东西在这个项目里面都可以找到。虽然他是用tornado写的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3240 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 12:13 · PVG 20:13 · LAX 05:13 · JFK 08:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.