一个简单的django应用程序,允许用户喜欢和不喜欢任何模型中的任何对象/项。它为您的对象生成一个like按钮。

django-likeit的Python项目详细描述


一个简单的django应用程序,允许用户喜欢和不喜欢任何 任何模型中的对象/项。它是在Python3.5和Python3.6上开发的 对于django 1.10及更高版本。

安装

  • 在您的虚拟环境中安装django likeit:
pip install django-likeit
  • 将应用程序添加到您的设置中.py
INSTALLED_APPS=[..."like",...]
  • 将likeit url添加到项目的urls.py文件:
fromdjango.conf.urlsimporturl,includeurlpatterns=[...url(r'^like/',include('like.urls')),...]
  • 迁移:
python manage.py makemigrations like
python manage.py migrate
  • 确保jquery ajax csrf配置正确,并且 在你的HTML中加入了很棒的字体。

用法:

模板标记:

  • 获取给定用户喜欢的对象:
{%withuser_likes<user>"app_label.model"aslike_list%}{%forlike_objinlike_list%}{# do something with like_obj #}{%endfor%}{%endwith%}
  • 给定一个对象obj,您可以将其显示为如下计数:
<p>LikeCount{{obj|likes_count}}</p>
  • 获取对象(obj)和用户(user)的类似实例
{%withobj|get_like_for:useraslike_object%}...{%endwith%}
  • 对象的like按钮my_obj
{%like_buttonmy_obj%}

喜欢经理

  • 为用户和对象创建类似实例:
>>>fromdjango.contrib.auth.modelsimportUser>>>frommusic.modelsimportSong>>>user=User.objects.get(username='jdoe')>>>song=Song.objects.get(pk=1)>>>like=Like.objects.create(user,song)
or:
>>>like=Like.objects.create(user,1,Song)
or:
>>>like=Like.objects.create(user,1,"music.Song")
  • 获取给定用户喜欢的对象:
>>>fromdjango.contrib.auth.modelsimportUser>>>user=User.objects.get(username='jdoe')>>>Like.objects.for_user(user)>>>[<Like:Likeobject1>,<Like:Likeobject2>,<Like:Likeobject3>]
  • 现在,获取属于给定模型的用户喜欢的对象:
>>>fromdjango.contrib.auth.modelsimportUser>>>frommusic.modelsimportSong>>>user=User.objects.get(username='jdoe')>>>Like.objects.for_user(user,model=Song)>>>[<Like:Likeobject1>,<Like:Likeobject2>,<Like:Likeobject3>]
  • 获取任何用户都喜欢的给定模型的liked对象实例:
>>>frommusic.modelsimportSong>>>Like.objects.for_model(Song)>>>[<Like:Likeobject1>,<Like:Likeobject2>,<Like:Likeobject3>]
  • 获取给定对象和用户的类似实例:
>>>fromdjango.contrib.auth.modelsimportUser>>>frommusic.modelsimportSong>>>user=User.objects.get(username='jdoe')>>>song=Song.objects.get(pk=1)>>>like=Like.objects.get_like(user,song)
  • 获取给定对象的所有类似实例
>>>frommusic.modelsimportSong>>>song=Song.objects.get(pk=1)>>>like=Like.objects.for_object(song)

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

推荐PyPI第三方库


热门话题
java Cassandra复制因子大于节点数   java J2EE JTA事务回滚不适用于OSE Glassfish 4.0(Build 89)   java spring安全预认证用户登录   org的java类文件。反应流。从RxJava编译示例时未找到Publisher?   java在使用dataFormat作为POJO通过Camel调用Web服务时无法设置SOAP标头   Javafx类的java静态实例   java如何防止一个部件在关闭时覆盖另一个部件的位置   sql server无法从我的java代码连接到数据库   java在JList(Swing)中显示带有的ArrayList   从Java中的CXF服务获取WSAddressing数据   使用资产文件夹进行java简单json解析(本地)   java LDAPException未绑定的无效凭据   JavaJSFspring部署到weblogic   JAVA中字符数组中的特定元素排列?   如果脚本位于不同的目录中,则ant不会使用exec标记运行Javashell脚本