Size: a a a

Django [ru] #STAY HOME

2019 August 08

M

Mihail in Django [ru] #STAY HOME
Sergey Rúdnev
первые 30 элементов должны быть отсортированы как-то, верно? по дате, например?
нет, не обязательно
источник

SR

Sergey Rúdnev in Django [ru] #STAY HOME
Mihail
нет, не обязательно
all().order_by('createDate)[:30]
источник

M

Mihail in Django [ru] #STAY HOME
Sergey Rúdnev
all().order_by('createDate)[:30]
Т.е. всё равно all() вызывается и получаются все элементы в начале... Я же хочу избежать этого поведения. Ведь 30 объектов достать гораздо проще из базы
источник

SR

Sergey Rúdnev in Django [ru] #STAY HOME
Mihail
Т.е. всё равно all() вызывается и получаются все элементы в начале... Я же хочу избежать этого поведения. Ведь 30 объектов достать гораздо проще из базы
можно как угодно, просто Вы не обозначили, какие именно элементы, то есть, за что цепляться должен запрос в базе

где [:30] это срез первых 30-ти объектов
источник

AK

Artyem Klimenko in Django [ru] #STAY HOME
Mihail
Т.е. всё равно all() вызывается и получаются все элементы в начале... Я же хочу избежать этого поведения. Ведь 30 объектов достать гораздо проще из базы
когда вызывается .all() никаких запросов в базу непроисходит, просто генерируется новый QuerySet с новыми параметрами запроса, вот когда его потребуется "вычислить" произойдёт запрос в бд
источник

M

Mihail in Django [ru] #STAY HOME
Artyem Klimenko
когда вызывается .all() никаких запросов в базу непроисходит, просто генерируется новый QuerySet с новыми параметрами запроса, вот когда его потребуется "вычислить" произойдёт запрос в бд
и всё таки .all()[:30] должен же сначала достать все элементы, а потом 30 элементов из него достать, верно?
источник

AK

Artyem Klimenko in Django [ru] #STAY HOME
Mihail
и всё таки .all()[:30] должен же сначала достать все элементы, а потом 30 элементов из него достать, верно?
нет
источник

M

Mihail in Django [ru] #STAY HOME
Sergey Rúdnev
можно как угодно, просто Вы не обозначили, какие именно элементы, то есть, за что цепляться должен запрос в базе

где [:30] это срез первых 30-ти объектов
ни за что. В моём случае можно считать, что множество
источник

DT

Dan Tyan in Django [ru] #STAY HOME
Mihail
и всё таки .all()[:30] должен же сначала достать все элементы, а потом 30 элементов из него достать, верно?
запрос будет только когда
будет обращение к данным
источник

DT

Dan Tyan in Django [ru] #STAY HOME
.all()[:30]  - формирует limit offset запрос
источник

M

Mihail in Django [ru] #STAY HOME
Dan Tyan
.all()[:30]  - формирует limit offset запрос
понял, спасибо
источник

EC

Elias Cooper in Django [ru] #STAY HOME
подскажите пожалуйста, есть модель

class Refund(models.Model):

   transaction = models.ForeignKey('transaction.Transaction', on_delete=models.CASCADE)
   amount = models.IntegerField(default=0)


в классе админки пишу что

class RefundAdmin(admin.ModelAdmin):
   list_display = ('transaction__id', )


на что получаю
Unable to lookup 'transaction__id' on Refund or RefundAdmin
источник

EC

Elias Cooper in Django [ru] #STAY HOME
что собственно не так
источник

MS

Mariana Strix in Django [ru] #STAY HOME
vadim chin
изврашаться с сериалайзером наверняка получится, но проще просто упаковать в транзакцию и обработать json ручками - в цикле создать
объекты персоны и во втором раскидать связи.
Спасибо за идею, буду пробовать
источник

RS

Rust Saiargaliev in Django [ru] #STAY HOME
Elias Cooper
подскажите пожалуйста, есть модель

class Refund(models.Model):

   transaction = models.ForeignKey('transaction.Transaction', on_delete=models.CASCADE)
   amount = models.IntegerField(default=0)


в классе админки пишу что

class RefundAdmin(admin.ModelAdmin):
   list_display = ('transaction__id', )


на что получаю
Unable to lookup 'transaction__id' on Refund or RefundAdmin
Ну он не может обратиться по __id в этом месте
Просто transaction_id пробовал?
источник

EC

Elias Cooper in Django [ru] #STAY HOME
почему он не может ?
источник

EC

Elias Cooper in Django [ru] #STAY HOME
у меня аналогичная конструкция в другой модели все работает как нужно
источник

RS

Rust Saiargaliev in Django [ru] #STAY HOME
Elias Cooper
у меня аналогичная конструкция в другой модели все работает как нужно
Покажи код того где это работает?
На dpaste.de
источник

P

Pooh in Django [ru] #STAY HOME
Использую локаль в своем проекте. При деплое не убунту получаю - unsupported locale setting
Поправил настойки локали системы, ошибка не пропала. Что делать?
источник

P

Pooh in Django [ru] #STAY HOME
Гениально. Поменял ru_RU на ru_RU.UTF-8 - заработало...
источник