CREATE TABLE users_rooms (
user_id INT NOT NULL,
room_id INT NOT NULL,
PRIMARY KEY (user_id, room_id),
FOREIGN KEY (user_id) REFERENCES users(id),
FOREIGN KEY (room_id) REFERENCES rooms(id)
);
class Room(models.Model):
name = models.CharField(max_length=50)
...
@classmethod
def owned_by(cls, user):
return cls.objects.filter(managers=user)
@classmethod
def participated_by(cls, user):
return cls.objects.filter(participants=user)
class User(models.Model):
username = models.CharField(max_length=50)
...
def owned_rooms(self):
return Room.owned_by(self)
def participated_rooms(self):
return Room.participated_by(self)
user = User.objects.get(username='Alice')
owned_rooms = user.owned_rooms()
participated_rooms = user.participated_rooms()
上一篇:按用户筛选的Access VBA
下一篇:按用户筛选MongoDB数据