@pydjango

Страница 173 из 1273
Diskord
10.03.2017
11:10:07
мне читать больше нравится

Google
Alexander
10.03.2017
11:11:44
вот тут много разных пакетов

Pavel
10.03.2017
11:17:08
ну по пакетам не ясна в целом архитектура. Я иногда хочу посмотреть проект в целом. Но их практически нет, либо старые, либо стремные

Если кто не видел, Python Coding Conventions от ЦРУ)) https://wikileaks.org/ciav7p1/cms/page_26607631.html

Tigran
10.03.2017
11:19:01
такого типа стандартов много) https://github.com/WhiteHouse/api-standards, вот стандарт по REST от белого дома США)

Pavel
10.03.2017
11:20:50
такого типа стандартов много) https://github.com/WhiteHouse/api-standards, вот стандарт по REST от белого дома США)
ну просто эти документы от ЦРУ вроде как засекречены были) там много разного, даже лицензия на sublime text есть от ЦРУ)

Tigran
10.03.2017
11:21:57
ну все равно) там же не секретная информация по ракетам) я уверен, им пофиг, что слили)

Lulz
10.03.2017
11:24:52
ну не совсем пофиг

ну теперь всем точно известно, что у гнусмуса в телеках 8000 серии есть слежка

к примеру

Alexander
10.03.2017
11:29:57
про стандарты - мне нравится, что у питона такой стиль, что многие вещи понятны сами собой

тут довольно мало вещей, которые нужно обсуждать

радует, что холиваров по стандартам в разы меньше

Google
Alexander
10.03.2017
11:33:55
ну, + requirements.txt + .gitignore + setup.cfg + setup.py

Tigran
10.03.2017
11:35:01
и папочка porn

Alexander
10.03.2017
11:37:41
тебе питона мало? ?

Tigran
10.03.2017
11:38:06
проект должен зарабатывать!

если основная услуга проекта не продается... переходим к плану Б))

Alexander
10.03.2017
11:39:58
в общем, Django-проект - это просто набор связанных друг с другом приложений, связаны они через файл настроек, через главный роутер (ну, urls.py) и, возможно, через общую СУБД (хотя можно сделать эту связь очень небольшой)

сейчас есть мода на микросервисы, в Django придумали нечто подобное давным давно)

Pavel
10.03.2017
11:41:42
а Django Channels вместо Celery не подойдет же для фоновых задач? Читал, что не гарантирует выполнение задачи.

Alexander
10.03.2017
11:42:21
я его глубоко не изучал, но вообще Celery это вариант по умолчанию

Lulz
10.03.2017
11:53:26
телевизоры самсунг 8000 серии

Alexandr
10.03.2017
11:55:28
Всё, нашёл. Интересно

Denis
10.03.2017
11:57:29
а Django Channels вместо Celery не подойдет же для фоновых задач? Читал, что не гарантирует выполнение задачи.
Celery, имхо, проще и гораздо более распространен -> больше готовых решений и ответов на стаковерфлоу

Eugene
10.03.2017
12:28:08
Мне вот Python rq и django-rq понравилось

На сколько норма делать в URLs /media/resumes/<file name> и проверять на login_required ну или во вьюхе делать махинации с Django sendfiles

Илья
10.03.2017
12:55:06
На сколько норма делать в URLs /media/resumes/<file name> и проверять на login_required ну или во вьюхе делать махинации с Django sendfiles
Ну если количество звпросов будет не большим, то можно и на джанге. А так лучше черзе nginx файлы отдавать, погугли про X-Accel, XSendfile

Alexander
10.03.2017
12:56:26
про телевизоры - лучше вообще не покупайте эту штуку) у меня её вообще нет, не жалею

занимаясь Django и программированием, вы умнеете, а от телевизора мозгов не прибавится, лучше попрограммировать в свободное время или почитать книгу

Tigran
10.03.2017
12:58:14
Google
Alexandr
10.03.2017
12:58:41
кстати да, тоже без телевизора живу)

Eugene
10.03.2017
12:58:44
Ютуб) А вообще отдыхать от компа тоже норм заходит

Tigran
10.03.2017
12:58:58
телевизор делится на два типа

Tigran
10.03.2017
12:59:13
1) интересные передачи 2) trash и пропаганда

Serge
10.03.2017
12:59:16
Я смотрю футбол по телевизору, что я теперь тупею?)

Alexandr
10.03.2017
12:59:29
Serge
10.03.2017
13:00:22
Кол-во запросов к strict файлам врядли будет большим. их грузят чаще всего для себя или администрации, а если грузят для всех, то они уже не strict файлы. Поэтому обычная практика их отдавать Django, примеров в гугле куча.

Alexander
10.03.2017
13:01:32
Я смотрю футбол по телевизору, что я теперь тупею?)
зависит от альтернативного поведения, если не футбол, то что? если ты бы мог, к примеру, потратить это время с пользой и научиться работать с asyncio - то да, а если пошёл бы пить пиво с друзьями - то, наверное, нет

Alexandr
10.03.2017
13:01:41
1) интересные передачи 2) trash и пропаганда
в России СМИ целиком подконтрольны конторе, поэтому первый вариант отваливается)

Eugene
10.03.2017
13:02:05
Ну, у меня файлов много вроде как, там с 2014 года лежат, и вот надо ограничить к ним доступ только для пользователей сайта, вот и думаю как это сделать, сейчас отдается через nginx

Serge
10.03.2017
13:02:43
зависит от альтернативного поведения, если не футбол, то что? если ты бы мог, к примеру, потратить это время с пользой и научиться работать с asyncio - то да, а если пошёл бы пить пиво с друзьями - то, наверное, нет
Хобии и отдых тоже нужны. Мозги полезно переклюать, кто-то играет. кто-то футбол смотрит. Без отдыха и хобби теряется производительность руда. доказано психологами.

Илья
10.03.2017
13:03:06
Скажите лучше как сделать событие при изменени статуса. Есть модель с полем стаус, при его изменении хочется делать всякую логики. Есть какие-то решения для этого?

Serge
10.03.2017
13:03:30
Есть, сигналы называется.

Alexandr
10.03.2017
13:04:11
или можно переписать save(), я прав?

Илья
10.03.2017
13:04:18
Ну сигналы они тебе ничего не горят об изменении. Ну типа как ты на post_save определился менялся ли статус.

Google
Alexander
10.03.2017
13:04:58
или можно переписать save(), я прав?
да, но все эти решения, разумеется, работают, если ты через питончик всё делаешь, а не напрямую в базу залез

Alexandr
10.03.2017
13:05:01
есть pre_save

Serge
10.03.2017
13:05:12
Илья
10.03.2017
13:05:42
pre_save не знает про id, если объект сохраняется впервые.

Илья
10.03.2017
13:06:57
мне надо например при изменении статуса слать разные письма, а иногда и более сложные дейтсвия делать, другие модели менять и т.п. Как-то в save пихать это не по человечески.

Serge
10.03.2017
13:07:14
похоже, ты спутал с Ansible ?
Ах точно, я сегодня не в форме и не внимателен, приболел(

Ivan
10.03.2017
13:07:49
кстати, кто-нибудь может знает какие-то хитрые особенности сигналов в режиме DEBUG и без, столкнулись с ситуацией, что на проде определённый сигнал в 80% случаев не отрабатывает. Локально повторить не можем...

Admin
ERROR: S client not available

Ivan
10.03.2017
13:08:15
ошибок вроде не сыпется. Речь про post_save

Serge
10.03.2017
13:09:02
мне надо например при изменении статуса слать разные письма, а иногда и более сложные дейтсвия делать, другие модели менять и т.п. Как-то в save пихать это не по человечески.
Придется. Для того чтобы не складывать все в кучу делай дополнительные уровни абстракции или функциональный подход

Сергей
10.03.2017
13:10:19
мне надо например при изменении статуса слать разные письма, а иногда и более сложные дейтсвия делать, другие модели менять и т.п. Как-то в save пихать это не по человечески.
не знаю на сколько это правильно, но статус меняется при выполнении какого-либо действия. так вот в это действие я б и запихул логику(или вызов) отправки писем или изменения др моделей...

Alexander
10.03.2017
13:11:36
Ты поконкретнее расскажи.
https://docs.djangoproject.com/en/1.10/ref/signals/#post-save

Илья
10.03.2017
13:12:30
Как ты поймешь в post_save изменился ли статус?

Serge
10.03.2017
13:16:01
update_fields там же есть не?

Илья
10.03.2017
13:16:41
update_field не про это

Google
Pavel
10.03.2017
13:17:41
Как ты поймешь в post_save изменился ли статус?
ты можешь хранить старый статус новым полем. old_state, state. В post_save сделать что-то такое: if state != old_state: print('Изменился')

такое не прокатит7

при создании инстанта у тебя и old_state и state будут одинаковыми

при изменении будешь делать логику свою и опять old_state = state делать

Илья
10.03.2017
13:20:11
А в какой момент сохранять этот old_state ? Если при сохраненни то в post_save я увижу уже новый статус.

Pavel
10.03.2017
13:23:44
Сделал запись новую. old_state и state одинаковы. Потом изменил поле state, в post_save проверяешь, state != old_state. Если True, изменился, делаешь локигу. Логику выполнил, в самом конце old_state = state сделал. Т.е. логики ты выполнил уже, и статусы в одинаковое положение привел. К следующему изменению готов.

Хотя, возможно, я что-то упустил.

Serge
10.03.2017
13:24:42
http://stackoverflow.com/questions/23361057/django-comparing-old-and-new-field-value-before-saving

Вообще лишнее поле не идеальный вариант. лучше там ниже взять с setattr

Pavel
10.03.2017
13:26:05
Вообще лишнее поле не идеальный вариант. лучше там ниже взять с setattr
Да, это просто наверное самое простое, до чего додумываешься сразу

Serge
10.03.2017
13:26:43
Ну я скинул пример как раз с дублированием поля

Pavel
10.03.2017
13:28:10
Ты сначала в save сохранить old_status и status и в post_save они уже будут одиаковые.
а ты в save сохраняй old_status = status, только в случае, если впервые создаешь. так же норм будет7

Serge
10.03.2017
13:28:22
http://stackoverflow.com/questions/23361057/django-comparing-old-and-new-field-value-before-saving?answertab=votes#tab-top ну вот тут сделано

Илья
10.03.2017
13:29:43
а ты в save сохраняй old_status = status, только в случае, если впервые создаешь. так же норм будет7
Нет не норм. Если впервые созают, что это я и так знаю из аргумента created в post_save. А тут изменение статуса не отследить.

@rown30 да я видел ссылку. Спасибо. Но надо подумать. Пока не готов сказать будет ли это работать.

Дмитрий
10.03.2017
13:35:39
подскажите батарейку Google Recaptcha

с галочкой которая)

Eugene
10.03.2017
13:36:16
/Google django Google recaptcha первая ссылка на гитхаб :)

Дмитрий
10.03.2017
13:37:35
спасибо, что-то я протупил))

Serge
10.03.2017
13:47:01
Найти бы пакетик в Django чтобы было что-то вроде файрвола. При нескольких запросов в определенный промежуток времени выдавало бы каптчу. Исключая поисковиков, конечно.

Страница 173 из 1273