Получить связанный (через ForeignKey) объект на мой взгляд - PullRequest
1 голос
/ 22 июля 2010

У меня есть такая модель:

class database(models.Model):
  db_name = models.CharField('Name', max_length=20)
  server = models.ForeignKey(dbServer, unique=True)
  user = models.ForeignKey(User)

На мой взгляд, я хочу захватить каждую базу данных, созданную для текущего пользователя (необходимо войти в систему в этот момент).Я уверен, что есть простой способ сделать это, но я не могу его найти.

Ответы [ 2 ]

4 голосов
/ 22 июля 2010

Вы можете просто использовать:

some_user.database_set.all()

Как я рекомендую попробовать атрибут related_name, например:

class database(models.Model):
    db_name = models.CharField('Name', max_length=20)
    server = models.ForeignKey(dbServer, unique=True)
    user = models.ForeignKey(User, related_name="databases")

А затем:

some_user.databases.all()
1 голос
/ 22 июля 2010

Используйте обратное соотношение :

databases = User.database_set.all()
...