首页 > 代码库 > 观django-messages包笔记

观django-messages包笔记

django_messages是一个提供注册用户之间互相发送消息的django app。最近在研究其实现机制,安装测试非常容易,导入包,配好url以及syncdb生成数据库即可使用。

 

一、收获一:

  我们在setting里设置好AUTH_USER_MODEL = ‘accounts.User‘,

  然后就可以在数据库中:

  from django.conf import settings

  AUTH_USER_MODEL = getattr(settings, ‘AUTH_USER_MODEL‘, ‘auth.User‘)    

  sender = models.ForeignKey(AUTH_USER_MODEL, related_name=‘sent_messages‘)
  recipient = models.ForeignKey(AUTH_USER_MODEL, related_name=‘received_messages‘, blank=True, null=True)

  实现同一个数据库引用两个相同的数据库作为外键

  另外引用本身数据库作为外键的写法为

  parent_msg = models.ForeignKey(‘self‘, related_name=‘next_messages‘, null=True, blank=True)

  

二、收获二:

  get_absolute_url

  解释地址:http://mxjloveyou.blog.163.com/blog/static/1762546892012231105635330/

  个人仿照使用:

  在model里面

  def get_absolute_url(self):

    return (‘message:community_activity_content‘, [self.id])
  get_absolute_url = models.permalink(get_absolute_url)

  在模板里面即可;

  <a href="http://www.mamicode.com/{% url ‘message:community_activity_content‘ i.id%}">替换为

  <a href="http://www.mamicode.com/{{ i.get_absolute_url }}">

  成功优化硬编码问题。