
Aleksandr
11.09.2017
00:58:51
А как теперь JOIN в QuerySet перевести?
annotate()? select_related()?
Похоже всё получилось
Pair.objects.filter(set_id=set_id, exceptionlog__isnull=False).values('a', 'b', 'exceptionlog__exception)
Спасибо за совет про INNER JOIN!

Sergei
11.09.2017
01:44:37

Google

Set
11.09.2017
04:31:07
пожскажите куда копать у меня в django на сервере фотки грузяться с провами -rw------- 1 как сделать что бы загружались 775

Dan
11.09.2017
04:47:17
лучше 755
как фотографии загружаются ?

BlastPy
11.09.2017
04:48:17
Или как то то ак
погуглите chmod и права там rwx

Set
11.09.2017
04:50:23

Dan
11.09.2017
04:50:42
как фотографии загружаются ?

Set
11.09.2017
04:50:50

Dan
11.09.2017
04:51:13
кому то надо кофе выпить =)
я спрашиваю как загружаются фотографии ?
лучше всего код показать
там либо в коде при загрузке выставляется права
либо это настройки сервера

Set
11.09.2017
04:54:31

Google

Set
11.09.2017
04:54:37

Erzh
11.09.2017
04:54:41
umask

BlastPy
11.09.2017
04:54:56
проверьте все права к папке в которой медиа

Set
11.09.2017
04:55:50
так я на всю папку поставил прова 775
сервер настроил Generic nginx может быть проблема с Generic конфиг

BlastPy
11.09.2017
04:58:08
работаете под рутом или под пользователем (запуск джанги и прочее)

Set
11.09.2017
04:59:04
нет

Yes
11.09.2017
05:36:00
Всем привет, как следющий запрос написать с django ORM
SELECT *, SUM(amount) as sum
FROM some_table
GROUP_BY user_id
objects.all().values('user_id').annotate(sum='amount')
вот так пробую , но он не показывает все остальные столбцы таблицы (SELECT *)

Andrey
11.09.2017
05:49:35
Потому что можно показать только то поле, по которому идёт группировка
То есть user_id
Если надо * то надо джоинить с основной таблицей

Yes
11.09.2017
06:10:03

Andrey
11.09.2017
06:17:34
Все зависит от того что там в *. Если ключевое поле одно по которому идёт группировка, то можно и средствами orm, иначе проще на нормальном sql написать запрос. Если orm и вытащить данные всей модели, то надо курить штатную документации.

Massimo
11.09.2017
06:33:50
Кто подскажет, почему форма не валидна?
https://dpaste.de/V0fA
Причем полбзуюсь встроенной формой смены пароля

Dan
11.09.2017
06:38:46
по коду не понятна какая логика в форме

Mad
11.09.2017
06:39:04
Ну дык там ошибка должна быть в errors где-нить
form.errors

Massimo
11.09.2017
06:40:49
https://dpaste.de/Xnqi

Google

Massimo
11.09.2017
06:41:18
Он по url попадает на else дальше при нажатии кнопки сабмит рабоатет if request.method ==POST

Dan
11.09.2017
06:41:56
это понятно
просто например у тебя передается атрибут user в форму
в встроенной такого нет
значит либо ты не правильно передаешь данные
либо у тебя там какаято своя логика
а нет, вру есть такой атрибут
вместо print('didnt make it') попробуй
print('errors - {}'.format(form.errors))
и посмотри что рапечатает
ну думаю должно быть все же form = PasswordChangeForm(request.POST, user=request.user)

Massimo
11.09.2017
06:49:04
Мдааа
errors - <ul class="errorlist"><li>new_password2<ul class="errorlist"><li>Введённый пароль слишком похож на имя пользователя.</li></ul></li></ul>
Django. No you can't have a pony

Mad
11.09.2017
06:50:34
Django. RTFM

Massimo
11.09.2017
06:52:10
Django. RTFM
=Там фишка в том что я форму вывел не через form.as_p
Там что там не было факин мэнуал

Mad
11.09.2017
06:55:06
Так при чём тут вывод? Ты в начале спросил, почему форма не валидна. Fucking manuals грят, что если форма не валидна, то ошибки складируются в form.errors

Sergey
11.09.2017
07:43:11
для локальной версии, можно настроить runserver при запуске компа? или скрипт написать?

Mad
11.09.2017
07:43:29
ос?

Sergey
11.09.2017
07:43:39
ubuntu
в домашней сетке расшарить хочу и только)

Mad
11.09.2017
07:44:08
поставь супервизорд и запускай через него
Ну короче как на обычном production настрой

Google

Mad
11.09.2017
07:44:28
Не оч. понятен вопрос, честно гря
Как ты обычно сайты деплоишь, так и задеплой у себя дома

Sergey
11.09.2017
07:47:20
дак я только учусь. даже не представлю пока как на продакшене работают с django. Я так думаю на горячую нельзя тут править)

Mad
11.09.2017
07:47:55
Ну можно через кронтаб костыль сделать
@reboot cd /web/site; python manage.py runserver 127.0.0.1:8000

Sergey
11.09.2017
07:48:30
я делал python manage.py runserver, потом пробовал через g... как там, но css стили админки, что-то не подрубились
да, так и сделаю

Mad
11.09.2017
07:49:17
Тока если ты что-нить поправишь в коде, у тебя сервер упасть может. И не поднимется.

Ahmed
11.09.2017
07:49:38
Вроде все правильно импортировано

Mad
11.09.2017
07:50:17
Ну дак ты покажи ошибку и как запускаешь скрипт, который "ругается".

Ahmed
11.09.2017
07:50:33

Mad
11.09.2017
07:51:39
Покажи вывод ls команды
из того же каталога, где ты скрипт запускаешь

Ahmed
11.09.2017
07:52:36

Mad
11.09.2017
07:52:59
ну вроде есть freelance какой-то )

Ahmed
11.09.2017
07:54:30
в urls я пытаюсь импортировать api приложения, а он говорит типа не может найти api приложение.

Mad
11.09.2017
07:54:47
freelance/init.py
freelance/api/init.py
эти файлы есть?
python -c 'from freelance.api.serializers import router' а это работает?

Ahmed
11.09.2017
07:55:18

Google

Ahmed
11.09.2017
07:55:39

Mad
11.09.2017
07:55:47
Эээ
Дык у тебя модуль api, а не freelance.api
Ты же находишься на одном уровне с api каталогом.
Если бы ты вышел на уровень вверх,тогда у тебя был бы freelance.api

Ahmed
11.09.2017
07:56:55

Mad
11.09.2017
07:57:21
Серьёзно? Ты опять гришь про ошибку и не показываешь её?
Ты считаешь у большинства людей развита телепатия?

Ahmed
11.09.2017
07:58:11

Mad
11.09.2017
07:58:35
Это не ошибка, это ты чё-то выдрал из контекста. Нормальыне люди показывают полный traceback.
Как ты выше показывал
на pastebin
Попробуй просто вынеси manage.py на один уровень ввверх.

Ahmed
11.09.2017
07:59:40
Окей, буду нормальным человеком
https://pastebin.com/fLJ1GCUD

Mad
11.09.2017
08:00:00
Но в целом тебе просто надо понять как работают питон пакеты, что такое импорт пакета, что такое sys.path и прочие базовые вещи.