django-orm- все статьи тега


Сложный запрос Django по внешним ключам

У меня есть две модели в одном приложении. Приложение называется "новости", и в его модели есть два класса, называемые" статья "и"категория". class Category(models.Model): name = models.CharField(_("Name"), max_length=100) slug = models.SlugField(_("Slug"), max_length=100, unique=True) class Article(models.Model): category = models.ForeignKey(Category, verbose_name=_("Category")) archived = models.BooleanField(_("Archive this?"), default=False) Я хочу создать запрос, который ...

В чем разница между select related и prefetch related в Django ORM?

в Django doc, select_related() "следует" за отношениями внешнего ключа, выбирая дополнительные данные связанных объектов при выполнении запроса. prefetch_related() выполняет отдельный поиск для каждого отношения и выполняет" присоединение " в Python. что значит "делать присоединение в python"? Может кто-нибудь проиллюстрировать на примере? Я понимаю, что для внешнего ключа отношения, используйте select_related; и для отношения М2М, используйте prefetch_related. Это правильно? ...

Как создать объект для модели Django с полем "многие ко многим"?

моя модель -> class Sample(models.Model): users = models.ManyToManyField(User) Я хочу сделать это (спасти пользователей user1 и user2 в этой модели ) -> user1 = User.objects.get(pk=1) user2 = User.objects.get(pk=2) sample_object = Sample( users = user1, users=user2 ) sample_object.save() Я знаю, что это неправильно: D, но я уверен, что вы получите то, что я хочу do...so как бы вы это сделали ? ...

Запрос к базе данных Django: как получить объект по идентификатору?

Django автоматически создает поле ID в качестве первичного ключа. теперь мне нужно получить объект с этим идентификатором. object = Class.objects.filter() Как написать такой фильтр? ...

Подключение нескольких фильтров() в Django, это ошибка?

Я всегда предполагал, что цепочка нескольких вызовов filter() в Django всегда была такой же, как сбор их в одном вызове. # Equivalent Model.objects.filter(foo=1).filter(bar=2) Model.objects.filter(foo=1,bar=2) но я столкнулся со сложным queryset в моем коде, где это не так class Inventory(models.Model): book = models.ForeignKey(Book) class Profile(models.Model): user = models.OneToOneField(auth.models.User) vacation = models.BooleanField() country = models.CharField(max_leng ...

Джанго фильтра многие-ко-многим с содержится

Я пытаюсь отфильтровать кучу объектов через отношение "многие ко многим". Поскольку поле trigger_roles может содержать несколько записей, я попробовал фильтр contains. Но поскольку это предназначено для использования со строками, я в значительной степени беспомощен, как я должен фильтровать это отношение (вы можете игнорировать values_list() atm.). эта функция прикреплена к профилю пользователя: def getVisiblePackages(self): visiblePackages = {} for product in self.products.all(): ...