
Mr Earnest
17.09.2017
18:18:50

ilya
17.09.2017
18:21:50
в фак в инфо группы загляните

Massimo
17.09.2017
18:22:08
Вот ее
Джанго - это философия, а философствовать Вас никто не научит, Вы должны научиться этому сами.

Google

Massimo
17.09.2017
18:25:29
Но как и любой философ - Вы счастливым не будете

ilya
17.09.2017
18:25:47
ваша лодка задерживается, капитан! )

Massimo
17.09.2017
18:27:03

ilya
17.09.2017
18:27:13
его шутка оказалась убийственной

Никита
17.09.2017
18:28:13
https://pastebin.com/g93hmuSZ Всем добрый вечер, решил написать свою функцию регистрации, все регестрирует, однако пароль не сохраняет, можете пояснить почему?

ilya
17.09.2017
18:29:25
вроде user.save() ?
после назначения пароля

Massimo
17.09.2017
18:29:48
Там у пароля своя система хэширования

ilya
17.09.2017
18:30:14
т.е. сохранять его не надо?

Massimo
17.09.2017
18:30:22
Просто user.save() работать не будет

Google

ilya
17.09.2017
18:32:19
set_password Sets the user’s password to the given raw string, taking care of the password hashing. Doesn’t save the User object
поэтому после неё user.save()

Никита
17.09.2017
18:33:58
окей спасибо

Massimo
17.09.2017
18:34:22
поэтому после неё user.save()
User.objects.create_user(username=username, email=email,date_of_birth=date_of_birth,gender=gender)
Он создаёт юзера и задаёт ему пароль
А ну да. Получается что в конце user.save()

ilya
17.09.2017
18:35:18
но в приведённом коде пароль задаёт человек отдельно
к тому же в доке пишут что create_user -
The username and password are set as given

Massimo
17.09.2017
18:37:02

ilya
17.09.2017
18:37:53
вставляется как есть, если я всё правильно понимаю. поэтому отдельно человек в коде сделал set_password - эта функция как раз хеширует его
но это не точно :)

Massimo
17.09.2017
18:39:37
А в самом create_user нельзя сделать что то вроде
,password = password1
?

ilya
17.09.2017
18:40:37
можно, но я не знаю, хеширует он его или нет(в доке пишут что вроде как нет). Надо провести эксперимент, проверь в шелле, если есть проект с моделью пользователя под рукой

Massimo
17.09.2017
18:41:39
Нет нету, да и вообще в наших краях глубокая ночь

ilya
17.09.2017
18:44:06
а в другом месте непосредственно про password пишут что Django doesn’t store the raw password. Т.е. не хранит в открытом виде

Massimo
17.09.2017
18:45:00

Никита
17.09.2017
18:48:01
Так я потерял нить повествования, что нужно сделать ? сначала set_password потом create_user?

xPushkin
17.09.2017
18:48:23

ilya
17.09.2017
18:50:56

Massimo
17.09.2017
18:52:04
Рофлмао

Никита
17.09.2017
19:04:38
Нет пароль все равно не задаеться

Google

Никита
17.09.2017
19:04:49
в админке пишет "пароль не указан"
user = User.objects.create_user(username=username, email=email, date_of_birth=date_of_birth,gender=gender,password=password1)

Artem
17.09.2017
19:08:16
Что лучше использовать, Ajax или django формы?

Sergij
17.09.2017
19:18:02
А что мешает использовать ajax с Django формами?
Ajax и Django формы совершенно разные вещи

ilya
17.09.2017
19:30:33

Grigoriy
17.09.2017
19:57:42
Словил что-то странное, не могу разобраться что это
Suspicious operation
The request's session was deleted before the request completed. The user may have logged out in a concurrent request, for example.
The above exception (could not extend file "base/111445/112081": No space left on device HINT: Check free disk space. ) was the direct cause of the following exception:
Что это?
free disk space наличествует

Denis
18.09.2017
00:22:49

Mike
18.09.2017
00:38:54
Используешь ли ты вронтенд фреймворки каие-нибудь? Я начал по нимногу вникать в Vue.js, сдела api на DRF, вроде SPA приложения становятся чуть-ли не стандартом.

Andrey
18.09.2017
02:32:45
Ребят, Celery-django. Нужно запускать таск каждые N секунд, но в рамках crontab, т.к. нужны ограничения по дню недели, и часам.
app.add_periodic_task(crontab(minute='*/'+sleep, hour='10-7', day_of_week='mon,tue,wed,thu,fri'), test_task)
crontab не держит у себя параметр second, можно ли как-то обойти этот момент? sleep - int, представляющий собой количество секунд. Могу туда и что-то другое положить, если это поможет мне запустить таск по секундам.
Если есть варианты без crontab, но с возможностью сохранить условия (дни недели, часы), то тоже подойдет

ros
18.09.2017
03:09:06
странный какой-то кейс для периодики.
можно сделать отдельный периодиктаск который ставит задания в целевую таску по циклу с ограниченым числом итераций.
целевая будет простым воркером.

Andrey
18.09.2017
03:14:21
странный какой-то кейс для периодики.
можно сделать отдельный периодиктаск который ставит задания в целевую таску по циклу с ограниченым числом итераций.
целевая будет простым воркером.
Почему странный? Есть параметр sleep, который конфигурируется пользователем системы, тем самым определяя, как часто дергать данные с удаленного сервера... Я, наоборот, удивился отсутствием аргумента, типа second в Crontab.
По ответу. Отдельный таск... Хм, т.е. делаем таск, запускаем его каждые sleep секунд, который вызывает slave-таск, с заданным crontab, верно понял?

ros
18.09.2017
03:20:44
slave - обычный task.
master периодический внутри for цикл со sleep с тавит slave.delay()

Andrey
18.09.2017
03:24:38
Эх, костыльно звучит. Неужели, такая нетипичная задача? Вроде же, всего лишь секунды к crontab добавить...
Как бы то ни было, спасибо, решение имеет место быть.

ros
18.09.2017
03:28:47
еслиб кому-то были нужны секунды в периодике их бы уже добавили

Andrey
18.09.2017
03:43:35
Вот, логично. Но... но, блин)

Google

Andrey
18.09.2017
03:44:03
Пришло моё время!)
А, наложить ограничение на мастер, ага

ros
18.09.2017
04:20:22
ага

Andrey
18.09.2017
04:29:58
Хм... а есть вариант при котором можно регулировать старт и финиш таска? Т.е. мне нужно, чтобы он стартовал в 17:00 и финишировал в 7:00
Ну да, можно у мастера просто итераций у цикла наколдовать столько, чтобы как раз этот период покрыть...

Yes
18.09.2017
04:41:42
как сделать что то на подобие конкатенации querysets с одной моделю ?
a =transactions.exclude(fund_id=None).values('fund').distinct()
b = transactions.exclude(humuser_id=None).values('humuser').distinct()
a+b

ros
18.09.2017
04:53:12
https://docs.djangoproject.com/en/1.11/ref/models/querysets/#union?
только должен быть одинаковый набор полей в каждом select (смотреть в дебагере)

X
18.09.2017
05:23:18

Andrey
18.09.2017
05:23:34
Кстати, ребят, по celery ещё вопрос. Какого-то хера при запуске celery завоится сразу несколько воркеров.
И они вот так пачками и идут
Чё за?
будто я завожу сразу 4 таска. Но это не совсем правда.
Точнее не так. Это вообще бред
Ребят,сделал таск, вот так объявил: app.add_periodic_task(crontab(hour=17, minute=0, day_of_week='mon,tue,wed,thu,fri'), master_get_data)
И эта шляпа всё равно заводит таск каждую минуту, да ещё и на 4 воркерах сразу

ros
18.09.2017
06:06:13
Чё за?
сколько ядров столько и процессов
добавить параметр
--concurrency=1

Google

Andrey
18.09.2017
06:08:26

ros
18.09.2017
06:09:46
прям работу работают или просто запускаются?
онож висит процессом не значит что что-то делает

Andrey
18.09.2017
06:12:02

ros
18.09.2017
06:13:42
процессы celery могут висеть хоть сотнями, но они начинают запускать таски только когда прилетает задание
оно может прилетать как при прямом вызове из кода task.delay(...) так и по периодике их уже генерит процессы beat

Arrow
18.09.2017
06:14:17
Подскажите как сделать рейтинговую систему? Я имею ввиду чисто в плане бэкэнда. Я было поналу модели продукта проставил интовое поле "рейтинг", но потом подумал - а как он высчитываться то будет? Т.е. для каждого юзера надо по идее записывать отдельно что он уже проголосовал за конкретный продукт и рейтинг который он ему выставил. Иначе он сможет до бесконечности за него голосовать, это нехорошо... Значит надо какую-то хранить связанную таблицу продукт-юзер?

Andrey
18.09.2017
06:15:06
app.add_periodic_task(crontab(hour=17, minute=0,
day_of_week='mon,tue,wed,thu,fri'), master_get_data)
Вот его periodic

ros
18.09.2017
06:17:20
откуда берется sleep_time?

Andrey
18.09.2017
06:18:17
Из базы, sleep_time = GeneralConfig.get_solo().tick_tack_time
Хм... кажется, проблема была не в celery...
Перезапустил redis и всё, вроде норм

ros
18.09.2017
06:20:13
redis-cli
> FLUSHALL
оно если туда заданий натыкало пока все не выберет не успокоится

Andrey
18.09.2017
06:21:14

ros
18.09.2017
06:22:02
вроде можно задать время жизни заданий
не пользовался
поищите

Andrey
18.09.2017
06:23:46

Bulatbulat48
18.09.2017
07:03:10