Как фильтровать объекты для пользователей в очереди - PullRequest
0 голосов
/ 21 января 2020

У меня есть приложение todo, и есть функция выполнения очередей. Скажем, Пользователь 1, Пользователь 2 и Пользователь 3 являются работниками и выполняют свою задачу, но последовательно в очереди. Что я имею в виду под sequentially in queue, пока пользователь 1 не пометит задачу как выполненную, эта задача не появится для пользователя 2 и 3. После того, как пользователь 1 проверит задачу как выполненную, задача будет видима для пользователя 2, но не для Пользователь 3, потому что Пользователь 2 выполняет эту задачу, и она должна быть полностью выполнена. После того, как Пользователь 2 проверит задание как выполненное, наступит очередь Пользователя 3. Моя модель выглядит следующим образом:

class Todo(model.Models):
   # some other fields...
   workers = models.ManyToMany(User, related_name='todos')
   # after user checks a todo task he is counted as worker that fulfilled his duties
   # todo won't be shown to fulfilled users
   fulfilled_workers = models.ManyToMany(user, blank=True)

Как отфильтровать таблицу Todo, чтобы показать задачи для пользователя, который является первым в отношениях M2M, но не для тех, кто go после него?

...