用于创建可在通知列表中向用户显示的事件的通用应用程序。
django-object-events的Python项目详细描述
django object events
===
===
generic app,用于创建可以在
通知列表中显示给用户的事件。
你有各种各样的事件:
*用户好友/不好友用户
*用户发布状态更新
*用户喜欢的东西
所有这些事情都发生在用户身上,并且发生在
数据库中的某个对象上(他的个人资料、Facebook页面等)。
n
对不同的表进行排序,然后根据日期对它们进行排序,这可能是通过django orm以一种高效的方式无法解决的问题。
对于django对象事件,您可以发出任何类型的事件,并将其放入
对象事件表中。它有一个指向所选用户的外键,还有两个通用外键:一个用于引发事件的对象,另一个用于事件所涉及的对象。
在上面的示例中,事件所涉及的对象将分别是
comment对象或highscore对象。这使您有机会使用"获取绝对URL"方法呈现指向该对象的链接。
来自pypi的ase::
$pip install django object events
从github获取最新提交::
$pip install-e git://github.com/bitmazk/django object events.git'egg=object'events
将应用程序添加到"已安装的应用程序"中::
installed'u apps=[
…
"object events",
]
包括应用程序的URL:
URL(r'^notifications/',include('object_event s.urls'),
吃设置或东西。简单地使用它,它是直观的=)
基本上它是关于添加正确的模板标记::
{%load object_events_tag s%}
{%render_notifications 3%}
然后创建一些事件。您可能希望在
视图、窗体或通过信号创建通知。例如:
@receiver(comment庠was庠posted)
def comment庠was庠posted庠signal庠handler(sender,comment,request,**kwargs):
"为新注释创建通知。"
object event.create庠event(
user=comment.user,event庠type="comment",
content庠object=comment,
event_content_object=comment.content_object,
其他_text=('(comment posted)',
)
),))
from_email=admins[0][1]
mailer_email_email_email_backend='django_libs.test_email_backend.email backbackend'
test_email_backend_recipipiens=admins
email_host='smsmtp.gmailmail.com'
email_host_user=from_email
email
email_host_host_password="您的密码"
email-port=587
来自_Email=from_email
server_email=from_email
email_use_tls=true
毫微秒。为此,请看下面的"对象事件用户聚合类"设置。
如果您已经创建或即将创建一个自定义配置文件
模型,该模型带有django用户模型的键和一个interval字段,该字段提供
这四个选项(实时、每日、每周、每月),您可以很容易地使用我们的
预定义类`` object\events.model s.useraggregation`。
将此配置文件用作常规用户配置文件(请参阅设置身份验证配置文件模块)。
手动:
./manage.py使用cronjobs实时发送事件电子邮件,例如:
。代码块::bash
***$home/webapps/$django_app_name/myproject/manage.py send_event_emails realtime>;$home/mylogs/cron/send_event_emails.log 2>;&;1
嗯,cronjobs?如果你对服务器有一定的了解,请连接到你的服务器并键入
``editor=nano crontab-e`.
whatever,也许你想先手动尝试一下。
现在你可以自由地使用这个应用程序,比如将它附加到你的项目中,然后通过post-save信号将模型连接到它。不管你做什么,都要玩得开心!
电子邮件翻译
++++++++++++++++++++例如:
…代码块::python
language=models.charfield(
最大长度=10,
choices=settings.languages,
verbose\u name=\uu('language'),
默认值=settings.languages[0][0],
与ajax函数一起使用使用
ajax可以很容易地使用诸如single_mark和bulk_mark之类的基本功能。只需将以下文件添加到base.html中即可。
<;link rel="stylesheet"type="text/css"href="{%static"对象事件/css/object_events.css"%}">;
<;script type="text/javascript" src="{%static"对象事件/js/object_events.js"%}">;
css a并且js文件已经导入到objectevent\u list.html
模板中。
te custom函数用于聚合所有用户,
,应通知这些用户。因此,您可以创建一个用户配置文件,其中
包含一个间隔或rrule设置。
只要确保使用基类object-events.models.useraggregationbase`.
对于Django的用户模型。
身份验证配置文件模块
++++++++++++++++++++++++++此django设置将自定义
模型连接到django的用户模型。正如您在上面的设置
object_events_user_aggregation_类中看到的,您必须根据间隔首选项提供user
querysets。因此,创建一个自定义模型,它看起来像我们的测试应用程序中使用基本聚合类的模型。
def get_preferred_email(self):
如果是self.email:
返回self.email
返回self.user.email
++++++++++++++++++++++++++++++
默认值:30
要在"通知列表"视图中显示的通知量。
路线图
----
有关当前和即将推出的功能,请参阅问题跟踪程序。
===
===
generic app,用于创建可以在
通知列表中显示给用户的事件。
你有各种各样的事件:
*用户好友/不好友用户
*用户发布状态更新
*用户喜欢的东西
所有这些事情都发生在用户身上,并且发生在
数据库中的某个对象上(他的个人资料、Facebook页面等)。
n
对不同的表进行排序,然后根据日期对它们进行排序,这可能是通过django orm以一种高效的方式无法解决的问题。
对于django对象事件,您可以发出任何类型的事件,并将其放入
对象事件表中。它有一个指向所选用户的外键,还有两个通用外键:一个用于引发事件的对象,另一个用于事件所涉及的对象。
在上面的示例中,事件所涉及的对象将分别是
comment对象或highscore对象。这使您有机会使用"获取绝对URL"方法呈现指向该对象的链接。
来自pypi的ase::
$pip install django object events
从github获取最新提交::
$pip install-e git://github.com/bitmazk/django object events.git'egg=object'events
将应用程序添加到"已安装的应用程序"中::
installed'u apps=[
…
"object events",
]
包括应用程序的URL:
URL(r'^notifications/',include('object_event s.urls'),
吃设置或东西。简单地使用它,它是直观的=)
基本上它是关于添加正确的模板标记::
{%load object_events_tag s%}
{%render_notifications 3%}
然后创建一些事件。您可能希望在
视图、窗体或通过信号创建通知。例如:
@receiver(comment庠was庠posted)
def comment庠was庠posted庠signal庠handler(sender,comment,request,**kwargs):
"为新注释创建通知。"
object event.create庠event(
user=comment.user,event庠type="comment",
content庠object=comment,
event_content_object=comment.content_object,
其他_text=('(comment posted)',
)
),))
from_email=admins[0][1]
mailer_email_email_email_backend='django_libs.test_email_backend.email backbackend'
test_email_backend_recipipiens=admins
email_host='smsmtp.gmailmail.com'
email_host_user=from_email
email_host_host_password="您的密码"
email-port=587
来自_Email=from_email
server_email=from_email
email_use_tls=true
毫微秒。为此,请看下面的"对象事件用户聚合类"设置。
如果您已经创建或即将创建一个自定义配置文件
模型,该模型带有django用户模型的键和一个interval字段,该字段提供
这四个选项(实时、每日、每周、每月),您可以很容易地使用我们的
预定义类`` object\events.model s.useraggregation`。
将此配置文件用作常规用户配置文件(请参阅设置身份验证配置文件模块)。
手动:
./manage.py使用cronjobs实时发送事件电子邮件,例如:
。代码块::bash
***$home/webapps/$django_app_name/myproject/manage.py send_event_emails realtime>;$home/mylogs/cron/send_event_emails.log 2>;&;1
嗯,cronjobs?如果你对服务器有一定的了解,请连接到你的服务器并键入
``editor=nano crontab-e`.
whatever,也许你想先手动尝试一下。
现在你可以自由地使用这个应用程序,比如将它附加到你的项目中,然后通过post-save信号将模型连接到它。不管你做什么,都要玩得开心!
电子邮件翻译
++++++++++++++++++++例如:
…代码块::python
language=models.charfield(
最大长度=10,
choices=settings.languages,
verbose\u name=\uu('language'),
默认值=settings.languages[0][0],
与ajax函数一起使用使用
ajax可以很容易地使用诸如single_mark和bulk_mark之类的基本功能。只需将以下文件添加到base.html中即可。
<;link rel="stylesheet"type="text/css"href="{%static"对象事件/css/object_events.css"%}">;
<;script type="text/javascript" src="{%static"对象事件/js/object_events.js"%}">;
css a并且js文件已经导入到objectevent\u list.html
模板中。
te custom函数用于聚合所有用户,
,应通知这些用户。因此,您可以创建一个用户配置文件,其中
包含一个间隔或rrule设置。
只要确保使用基类object-events.models.useraggregationbase`.
对于Django的用户模型。
身份验证配置文件模块
++++++++++++++++++++++++++此django设置将自定义
模型连接到django的用户模型。正如您在上面的设置
object_events_user_aggregation_类中看到的,您必须根据间隔首选项提供user
querysets。因此,创建一个自定义模型,它看起来像我们的测试应用程序中使用基本聚合类的模型。
def get_preferred_email(self):
如果是self.email:
返回self.email
返回self.user.email
++++++++++++++++++++++++++++++
默认值:30
要在"通知列表"视图中显示的通知量。
路线图
----
有关当前和即将推出的功能,请参阅问题跟踪程序。