English 中文(简体)
• 如何利用许多Tomany关系追踪用户的成员资格?
原标题:How to use ManyToMany relations to track user membership?

为使用户成为多个群体的成员而需要何种关系才能收回:

  1. history of user participation in some groups (date joined, date quit)
  2. list of current user groups (in join order) to determine his current status
  3. list of users, who were participating in that group at a given period of time

我猜测是“ToMany”(或一种很简单的“AtoMany”),但可以说明如何使用它;最好是Django的模型需要一个起码的例子。

另外,在需要删除某些集团/用户时,预计会出现哪些一致性问题?

问题回答
  • members
  • groups
  • groupmembers

小组成员是你们的表象,有:

  • member (one member has many groupmember records)
  • group (one group has many groupmember records)
  • create date
  • remove date (leave null until applicable)

因此,根据您的要求:

  1. query groupmembers with a group and sort by date
  2. query groupmembers with a member (sort by create date)
  3. query groupmembers with a group and remove is null (or inside a date range)




相关问题
How to get two random records with Django

How do I get two distinct random records using Django? I ve seen questions about how to get one but I need to get two random records and they must differ.

Moving (very old) Zope/Plone Site to Django

I am ask to move data from a (now offline) site driven by Plone to a new Django site. These are the version informations I have: Zope Version (unreleased version, python 2.1.3 ) Python Version 2.1....

Can Django models use MySQL functions?

Is there a way to force Django models to pass a field to a MySQL function every time the model data is read or loaded? To clarify what I mean in SQL, I want the Django model to produce something like ...

Flexible pagination in Django

I d like to implement pagination such that I can allow the user to choose the number of records per page such as 10, 25, 50 etc. How should I go about this? Is there an app I can add onto my project ...

is it convenient to urlencode all next parameters? - django

While writing code, it is pretty common to request a page with an appended "next" query string argument. For instance, in the following template code next points back to the page the user is on: &...

Pragmatically adding give-aways/freebies to an online store

Our business currently has an online store and recently we ve been offering free specials to our customers. Right now, we simply display the special and give the buyer a notice stating we will add the ...

热门标签