Синтаксис Django obj.pk - PullRequest
       1

Синтаксис Django obj.pk

1 голос
/ 14 января 2011

Я пытаюсь понять синтаксис ".pk" в Django. Является ли ".pk" ссылкой на файл или ссылкой на первичный ключ ... Как и ".pk", включающий точку, поэтому сложно найти ответ в Google. Может кто-нибудь сказать мне ..

Например

        current_tags = list(self.filter(items__content_type__pk=ctype.pk,
                                    items__object_id=obj.pk))

Ответы [ 2 ]

2 голосов
/ 14 января 2011

obj.pk относится к свойству объекта, которое действует как псевдоним первичного ключа.

Подробнее см. http://docs.djangoproject.com/en/dev/ref/models/instances/#the-pk-property.

Что касается того, как Google для этого, я наткнулся на эту ссылку от Google для "+ django Model.pk" начиная с obj, если класса models.Model.

На самом деле, при поиске документов, связанных с django, проще всего было бы использовать окно поиска на сайте http://docs.djangoproject.com. Если вы действительно хотите использовать Google, включите +site:docs.djangoproject.com в строку поиска, например, "pk + site: docs.djangoproject.com" .

0 голосов
/ 14 января 2011

Удобство использования поля 'pk' заключается в том, что вы можете использовать чужую модель, у которой поле первичного ключа называется отличным от 'id'. Другими словами, поле 'pk' дает вам гибкость в использовании первичного ключа модели, не зная, что это за ключ на самом деле.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...