Jungles, виртуальное окружение изолирует в себе все зависимости и модули проекта. При создании окружения вы также можете указать с какой версией python хотите работать, прописав в параметрах путь к исполняемому файлу.
Помочь это вам может тем, что вам не придется писать строки вида:
Активируете окружение, устанавливаете в нем джанго и все зависимости. И затем просто пишите: django-admin startproject mysite
Обратите внимание, что консольная утилита django-admin запускается без расширения .py на конце.
hard0g1, эта ошибка возникает тогда, когда вы пытаетесь по индексу обратиться к объекту None. r.json()['rgDescriptions'] - вот тут r.json() возвращает None,
Третья таблица будет products_sets, где в колонке set у вас будут через запятую перечисляться id свойств из таблицы properties. И вы как угодно сможете комбинировать их.
Если у вас БД Postgres, то советую сделать эту колонку типом Array, так будет проще.
Пример:
1 запись в таблице products:
id - 1
desc - "i'm title"
price - 182
------------------------
5 записей в таблице properties:
id - 1
name - color
value - red
--
id - 2
name - color
value - black
--
id - 3
name - size
value - S
--
id - 4
name - size
value - XS
--
id - 5
name - size
value - 2XS
------------------------
3 записи в таблице product_sets:
(i'm title, red, S)
id - 1
product_id - 1
set - 1, 3
--
(i'm title, black, XS)
id - 2
product_id - 1
set - 2,4
--
(i'm title, black, 2XS)
id - 3
product_id - 1
set - 2,2
И вы уж выбираете по product_id все нужные комплекты товара.
Смысл вашей проблемы в том, что ваш сайт (который работает по протоколу https) пытается загрузить внешний ресурс с сайта, который работает по протоколу http. Если это чужой сайт, то ничего не поделать - контент вы не загрузите (такая политика безопасности). Если же это ваш сайт, проверьте, чтобы все пути в ссылках были либо относительные, либо абсолютные, но начинались на https://...
QNA-1976, ну вообще, если у вас возвращаемое значение указано array, а возвращается класс, то должна быть ошибка и скрипт не должен работать.
Глядя на второй кусок кода выше я могу предположить, что и с предыдущем кодом всё в порядке. Методу fetchAll передается НА ВХОД название класса, и уже этот самый метод должен вернуть НА ВЫХОДЕ в функцию query либо массив, либо NULL. А уже функция query, как посредник, вернёт те же самый значения (array|null).
QNA-1976, нет. Результат работы всей функции в одном из двух указанных мной вариантов будет массив. А уж что там в массиве будет, зависит от логики функции и ожидаемого результата)
ldmitriy, да, через мониторинг системы. Просто открыл и наблюдал) Иван Мельников, нее, я просто ограничил. Первый раз запустил без ограничений, у меня съелось 18гб памяти)) и я прервал этот процесс, даже не смотрел, сколько туда влезло элементов.
ldmitriy, смотрите, я для эксперимента заполнил список из 500млн записей
у меня на это ушло где-то ~3гб оперативки. Плюс у меня каждый элемент списка - это строка из 5 символов. У вас же это может быть абсолютно рандомный список из элементов разной длины. Поэтому может и не хватать оперативки, конечно
Помочь это вам может тем, что вам не придется писать строки вида:
Активируете окружение, устанавливаете в нем джанго и все зависимости. И затем просто пишите:
django-admin startproject mysite
Обратите внимание, что консольная утилита django-admin запускается без расширения .py на конце.