为用户启用以下功能的应用程序。可用于联系书籍或其他什么

django-follow的Python项目详细描述


django遵循图::https://secure.travis ci.org/caffinehit/django follow.png
:align:center
:alt:


django follow允许您的用户遵循django
应用程序中的任何模型。


安装:
----




用法:
--


ur``已安装的应用程序`
-如果计划使用
视图:






url('^',include('follow.urls'),


-在
``models.py`文件中注册希望能够遵循的模型:







from django.db import models
from follow import utils


class mymodel(models.model):
field=models.charfield(max_length=255)




**注意**在运行"syncdb"之前必须先注册模型,否则会遇到
`dj中描述的问题ango follow/issues/16<;https://github.com/caffinehit/django follow/issues/16>;`

test
----



存储库包括一个示例项目和应用程序,该项目和应用程序配置为测试``django follow`。


将存储库和CD克隆到项目文件夹:



CD示例/
python manage.py


api
——




>manager
~~~~~~~~~~~~~~~~~~~~~~~~~>
`` follow `` obj `。创建(用户,obj,**kwargs)`:
`````user `` follow `` obj ` ` ` `
` ` ` ` ` ` `(fo跟,bool)` `。获取或创建(用户,obj,**kwargs)` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` `.objects.is following(user,obj)`:
返回``bool``

-`` follow.objects.get-follows(model-or-u-object-or-queryset)``:
返回与某个模型、
对象或queryset相关联的所有`` follow``对象。

**有关性能的说明**

我建议不要在单个对象的一个请求/响应周期中使用`` follow.objects.u-follow``是否太频繁
。在查询集
上使用它,可以避免太多查询的堆积。


utils
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~>
-``follow.utils.register(model,字段名,相关名称,查找方法名)```:
register``model``注册到django follow。

-`` follow.utils.follow(用户,对象)`:
=>使``用户`` follow ``对象``对象``` follow ``对象`



>>.unfo公司allow(user,object)```(user,object,object)```unfollow``object``````````````````````````object```````````````````````````````````````````````````````````````````````````````(user,object)````````````````````````````````````````````````````````````:
返回``object``

-``follow.utils.unfollow_link(object)``:
返回``object``


模板标记
~~~~~~~~~~~~~~

django follow会提供一个创建url的模板标记、一个用于检查用户是否跟随对象的筛选器和一个呈现跟随对象的模板标记
/>表单。

::

{%load follow_tags%}
{%follow_url object%}
{%request.user如下:object%}
{%follow_form object%}
{%follow_form object"your/custom/template.html"%}
-`{%follow_url object%}`:
返回跟随或展开对象的URL,具体取决于
关于"request.user"是否已经在跟踪对象。

-`{%follow\u url object other\u user%}`:
与上面相同-但不是解析"request.user``它为您传入的任何用户解析。

-`{%request.user`是:object%}`:
不跟随
对象。

-`{%follow_form object%}`:
呈现要跟随的表单给定的对象。

-\`{%follow\'u form object"your/custom/template.html"%}:
使用自定义模板呈现窗体。

nals.unfollowed(sender,user,target,instance)``

要在每次跟随``user``或``group``对象时调用处理程序,请执行以下操作:






低强度处理程序(用户、目标、实例、**kwargs):
发送邮件("您被跟踪"、"您被跟踪"、"没有回复@localhost"、[target.email])

def group-follow-u处理程序(用户、目标、实例、**kwargs):
发送邮件("group-followed",%s跟踪了您的组%user,"no reply@localhost",[[u.email for u in target.user_set.all()]])


signals.followed.connect(user_follow_handler,sender=user,dispatch_uid='follow.user')
signals.followed.connect(group_follow_handler,sender=group,dispatch_uid='follow.group')

也可以使用unfollowled处理程序进行反向操作。

**注意**

例如,django的管理员将首先删除导致"instance.user"抛出"doesnotexist"的用户。
当心。

-*向后不兼容*

-使管理器*变得更轻。
-删除"model.followers"方法
-添加"model.get-followers"方法返回所有"follow"对象
-将"follow.follower"移动到"follow.user"中读/写
``follow.target``属性
-``follow.util``移到``follow.utils``
-不再有M2M跟在

----

`@flashingpumpkin<;http://twitter.com/flashingpumpkin>;。`_

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
datetime如何使用JodaTime在Java中设置时间属性   java固定算法的性能时间   java如何从JMenu中获取所选项以更改文本区域的文本颜色?   java配置单元UDF传递数组<string>作为参数   javaapachebeam和BigQuery   java与PrintWriter之间的差异。printf和PrintWriter。格式方法   继承如何处理按Java版本更改的导入,以及在多个版本上编译   xml java。lang.noClassDefFoundant生成错误   java如何使用包含映射的JSON发送POST请求?   java如何在任何应用程序的JAR文件中绑定MySql数据库?   Java脚本解释器   sslhttpclientjava。网SocketException:未实现未连接的socket   java如何为Android应用程序创建类似于Cron作业的东西   java JButton+radiobox+复选框   java内存管理将文件写入内存   java这是计算对象实例的有效方法吗?   用于死锁情况的java代码?   JavaSpring容器作为新实体插入,而不是存储在表中