
serbernar
15.09.2017
11:13:02
К чему эта болтовня тут, ребят? создайте флудилку и там общайтесь на темы не по джанге

Artem
15.09.2017
11:13:10
херня... 4-5 часов на сон, 1.5 часа на дорогу, час на обед, и все остальное на работу

Andrey
15.09.2017
11:31:35

Google

Igor
15.09.2017
11:33:00
Привет, ребята. Давно задаюсь одним вопросом.
У джанго отличная орм, которая круто работает со связями. Знаю что реальные запросы в бд джанго делает в момент когда первый раз идет использование инфо. Вопрос, если, например, обьекты одной модели ссылаются через, пусть будет, связь многие ко многим, и затребование обьектов через эту связь происходит при выводе на темплейте в форе используя .all, то в какой момент идет запрос в базу для получения необходимых данных для вывода: еще во view или на темплейте на каждой итерации фора; просто бывает по связям с одного обьекта на другой проходишь до 5 связей, и как в этом случаи получаются данные с бд? Тут еще вопрос в том что если все во вью, то бывает что не все данные по всем связям нужны, а если данные дозабираются уже потом по ходу, то это должно сказаться на быстродействии кода.
Извините что столько букв, надеюсь понятно описал))

Kirill
15.09.2017
11:39:16
Для решения этой проблемы есть select_related и prefetch_related

Alexey
15.09.2017
11:39:27
используйте select_related
точно)))

Kirill
15.09.2017
11:39:45
Если делать без них, то на каждой итерации будет обращение к бд

Igor
15.09.2017
11:48:29
Оу, круто, спасибо))
А эти штуки работают на джанго 1,7?

Vladimir
15.09.2017
11:53:49
/help@banofbot
/help
/help@banofbot

Stas
15.09.2017
11:59:37
/help@banofbot

Artem
15.09.2017
12:01:22

Google

Uncle
15.09.2017
12:35:55
Помню одну умную фразу из книги - "хорошему фильму реклама не нужна"
Это я вам как Король севера говорю

serbernar
15.09.2017
12:37:31
ты король 7 королеств

Archie
15.09.2017
12:38:12
и ты трахнул свою тётю

Андрей
15.09.2017
12:41:09
/help@banofbot

Older
15.09.2017
12:41:43
Здравствуйте. Я сосед админа этого канала, и эта сучка пиздит

BlastPy
15.09.2017
13:01:17
/help@banofbot
@banofbot
чет не работает

Igor
15.09.2017
13:05:23
Снова по выборкам и связям: если достать обьекты через prefetch_related, то они закэшируются, а можно ли при выводе делать фильтрацию связаных обьектов (тех, что через МениТуМени) без дополнительных запросов в бд, а то читаю что джанго делает снова запрос если писать просто .filter()

Dan
15.09.2017
13:17:19
любая фильтрация будет делать запрос
prefetch_related не кэширует запрос
он отлавливает объекты из основного запроса
и объеденяет выборку связаных в один запрос
те грубо говоря при выборке 20 объектов
без prefetch_related будет 20 дополнительных запросов в итоге 21
с prefetch_related будет один дополнительный запрос в итоге 2 запроса

Igor
15.09.2017
13:26:37
Спб.
А можно ли изменить этот запрос
pizzas = Pizza.objects.prefetch_related('toppings')
так что бы взять не все toppings а только отфильтрованые по каком то полю?

Artem
15.09.2017
13:27:34

Dan
15.09.2017
13:27:50
он выберет только те toppings которые относятся к выбранным pizza

Igor
15.09.2017
13:31:29
это я понимаю, а дополнительно можно ли сделать так что бы брались не все toppings к каждой pizza, а, например, только те что с status=1

Artem
15.09.2017
13:31:47

Igor
15.09.2017
13:36:38

Andrey
15.09.2017
13:38:25
Господа. Такой вопрос.
Есть код, сохраняющий файл по пути в поле экземпляра модели.
obj.target_field.save('filename', File(file_path))
Он работает, все отлично.
Мне потребовалось присвоить файл полю, которого я не знаю заранее. Оно получается из аттрибутов другого поля в виде строки.
Как мне в таком случае получить к нему доступ?

Google

Dan
15.09.2017
13:39:07
через kwargs

Andrey
15.09.2017
13:39:36
Нет, получить строку я получил.
Или, епрст, я понял, о чем ты. Щас попробую.

Dan
15.09.2017
13:40:43
data = {}
fieldname = 'some-field'
data[fieldname] = 'some value'
Model.objects.create(**data)

Andrey
15.09.2017
13:52:36
Тут вопрос не в передаче аргументов. Мне нужно вызвать метод поля, название которого я знаю. Через _meta.get_field не получается, я получаю аттрибут модели, а не объекта.
Если передать строку в FileField, он только запишет путь.
Ладно, покопаюсь еще.

Dan
15.09.2017
13:56:14
я возможно не понимаю что тебе нужно получить
из описания не понятно

Andrey
15.09.2017
14:08:23
obj.ИМЯ_ПОЛЯ.save('filename', File(file_path))
Да ?

Dan
15.09.2017
14:09:33

Andrey
15.09.2017
14:14:47
Теперь осталось разобраться собственно с сохранением файла. Но это уже совсем другая история.

Dan
15.09.2017
14:17:32
а у тебя там много полей чтоли в одной модели ?

Uncle
15.09.2017
14:26:07
Ребят, есть кто-нибудь, кто работает на стареньких макбуках? ну там 8 -10 годы?
или работал последние несколько лет
вопрост такой, будет ли достаточно комфортна работа с вот такой машинкой - https://www.olx.ua/obyavlenie/macbook-pro-13-late-2008-core-2-duo-2-0ghz-4gb-geforce-9400m-128ssd-IDtVJeU.html#1c2fb0ed2e;promoted ?
джанга + редисы, селери и прочее

Andrey
15.09.2017
14:31:28

Google

Andrey
15.09.2017
14:32:24

Uncle
15.09.2017
14:32:56
проц интегрирован?

Andrey
15.09.2017
14:33:57

Artem
15.09.2017
14:34:51

Serj
15.09.2017
14:35:32

Artem
15.09.2017
14:36:08
вообще, все завиист от проекта! Один был с епучим ЖС где его было слишком много, там тяжко было рендерить все это!
на юнибоди все оке

Andrey
15.09.2017
15:49:12
Господа товарищи, допилил и выношу свое творение на ваш суд.
Критика приветствуется.
https://github.com/thekitaev/django-zipbulkupload
Это абстрактная модель и поле, которые позволяют загружать файлы или картинки в архиве.
Архив распаковывается, дети делаются, архив удаляется (нет).

BlastPy
15.09.2017
15:53:39
А почему без тестов ?

Andrey
15.09.2017
15:54:08

Uncle
15.09.2017
16:17:45
Господа, можно как-то в виртуалбоксе выбирать разрядность?
или обязательно теперь винду 64 ставить?
сори за офтоп
но я вас люблю

Rookie
15.09.2017
16:19:43
но я вас люблю
Зима скоро. Виртуалбокс создаётся изначально с требуемой архитектурой.
Или пезжу. 5 сек, щас скажу.

Google

serbernar
15.09.2017
16:20:44

Uncle
15.09.2017
16:21:07

Rookie
15.09.2017
16:21:21

Uncle
15.09.2017
16:21:42
что?

Rookie
15.09.2017
16:23:57

Uncle
15.09.2017
16:24:41
я ж не винду запускаю

Rookie
15.09.2017
16:26:15
я ж не винду запускаю
С люнексом это тоже работает. То есть, образы настраиваются. Очевидно, дело в макоси, но я не пробовал.

Uncle
15.09.2017
16:26:48
лед тронулся

Rookie
15.09.2017
16:27:04

serbernar
15.09.2017
16:27:53
зачем тебе образ?
вагрант же

Uncle
15.09.2017
16:28:17
хочу мас ось запустить. с хакинтошем мучаюсь 4 день, не поулчатеся ничего
(