@pydjango

Страница 172 из 1273
.
09.03.2017
15:58:19
что за теги, где почитать

Denis
09.03.2017
15:58:21
я бы задумался о тегах
Про какие теги идет речь?)

Alexander
09.03.2017
15:58:53
https://docs.djangoproject.com/en/1.10/howto/custom-template-tags/

тогда get_context_data будут легче

Google
Alexander
09.03.2017
15:59:37
а дублирующий контент будет в теге

Denis
09.03.2017
16:00:15
А, мне кажется для контекст лучше вынести просто в отдельный метод вроде add_contextи передавать туда контекст

Alexander
09.03.2017
16:00:42
ну вот как минимум для комментариев отдельный тег напрашивается

Denis
09.03.2017
16:01:03
Мб, я не читал сам код внимательно :D

Alexander
09.03.2017
16:01:36
большие вьюшки (контроллёры) это не очень хорошо ИМХО

если из View что-то можно вынести в тег - это стоит сделать

но работать будет и так, и так, разумеется

Denis
09.03.2017
16:04:00
Я обычно всякие такие вещи в utils выношу

.
09.03.2017
16:05:40
Хорошо, комменты вынесу в тэг. Вообще есть ощущение, что-то не то делаю. Мне надо обработать отправку формы в ThreadList. Я правильно понял, что мы создаем отдельный класс и там описываем form_valid?

Serge
09.03.2017
16:14:51
Объедини ListView с CreateView с помощью FormMixin

Сергей
09.03.2017
18:07:50
Всем привет. Разработчики, подскажите, какими инструментами пользуетесь для удобства проектирования больших проектов? У меня ТЗ на на 80стр + дизайн на 40стр. Для меня это большой проект и надо продумать архитектуру. В дизайне есть тонкости, которых нет в ТЗ. И я столкнулся с тем что не помню что уже реализовал и с чем связал. Как нибудь это можно оптимизировать? Мб графически представить, что б не лезть каждый раз в код и думать что и куда запихнул..

Eugene
09.03.2017
18:09:52
draw.io

Google
Alex
09.03.2017
18:11:49
Докупить оперативки мозгам
тогда GC нужен прокачаный :))

Сергей
09.03.2017
18:14:07
Докупить оперативки мозгам
С этим все нормально, это не один проект, над которым работаю, 3 проекта держать в голове трудно, особенно когда забрасываешь один из них на неделю, а потом надо вспоминать что нашкодил.

Artyom
09.03.2017
19:19:58
хм, есть форма с таким полем self.fields['screenshots'] = forms.ChoiceField(label='Скриншоты', widget=forms.CheckboxSelectMultiple, choices=screenshots_choices, initial=[x[0] for x in screenshots_choices][:3]) , при ее сабмите, в пост отдается только последнее выбранное значение, так со всеми multipleFields в форме. Подскажите, где ошибка?

и еще, я переопределял конструктор формы, как правильно сделать так, чтобы я мог из поста воссоздать ее? При попытке это сделать, в форме появляются только пустые поля, без значений, хотя в посте они есть

Artyom
09.03.2017
19:29:59
Во вьюшке как то так: if request.POST: form=MyForm(data, initial=initial) else: form=MyForm(initial=initial)
Спасибо, дату не указывал. В туторах пишут просто form(request.POST), а на счёт первого вопроса не сможешь подсказать?

Артемий
09.03.2017
19:35:19
Может стоит посмотреть MultiForm

http://django-multiform.readthedocs.io/en/latest/

Артемий
09.03.2017
19:37:18
Джанго видит в форме 1 поле - и в итоге возвращает 1 значение

Я у кого то в встречал в туторах такую ситуацию - там надо было загружать более 1 фотки за раз

С 1 формы

Alexandr
09.03.2017
20:43:28
Парни, такой вопрос. Есть ли способ сделать так, чтобы настройки проета, к примеру, EMAIL_HOST можно было задавать в интерфейсе админа?

Eugene
09.03.2017
20:44:03
django-solo

Alexandr
09.03.2017
20:48:34
Можешь подробнее объяснить? Вот создал я модель, в которой храню всё, что мне нужно. Как потом мне её в настройки добавить?

Google
Alexandr
09.03.2017
20:52:14
я понятно вопрос сформулировал?

я пробовал реализовать это схожим пакетом, но при попытке прямого импорта в settings вылетает ошибка, потому что создаётся круговой импорт

Eugene
09.03.2017
20:56:58
а тебе обязательно в настройках это хранить? Зачем тогда модель?) from .models import SiteConfiguration config = SiteConfiguration.objects.get() config.EMAIL_HOST вот так например

Alexandr
09.03.2017
21:00:30
смотри, заказчик хочет, чтобы настройки можно было менять в интерфейсе админа.

Т.е. задавать сервер, с которого отправляется сообщение, логи, пароль и т.п.

логин*

Eugene
09.03.2017
21:04:27
ну вот можешь создать модель и использовать ее в качестве этих настроек. очень удобно. я бы скорее всего так и сделал)

Alexandr
09.03.2017
21:05:05
как их в настройки потом портировать?)

Eugene
09.03.2017
21:05:43
https://github.com/lazybird/django-solo#use-cases

Alexandr
09.03.2017
21:05:43
ведь на сколько я понимаю, SMTP настройки задаются при старте проекта

Eugene
09.03.2017
21:05:55
from .models import SiteConfiguration config = SiteConfiguration.objects.get() # get_solo will create the item if it does not already exist config = SiteConfiguration.get_solo()

Alexandr
09.03.2017
21:05:56
насколько*

Eugene
09.03.2017
21:06:06
аа, кстати возможно да, не уверен.

Alexandr
09.03.2017
21:06:58
если я портирую модель в настройки таким образом, то создаётся круговой импорт

Ну, с другим, схожим пакетом, вышло так.

Eugene
09.03.2017
21:08:13
ну укажи полный путь.

Alexandr
09.03.2017
21:08:16
т.е. получается, что способа так сделать нету?

Dmitriy
09.03.2017
21:08:29
connection = mail.get_connection() connection.password = config.EMAIL_HOST_PASSWORD connection.username = config.EMAIL_HOST_USER connection.host = config.EMAIL_HOST connection.port = config.EMAIL_PORT connection.use_tls = config.EMAIL_USE_TLS send_mail('my subject', 'my message', config.DEFAULT_FROM_EMAIL, ['abc@gmail.com'], connection=connection)

Alexandr
09.03.2017
21:09:56
Ох, спасибо. Забыл про такую возможность. Спасибо, Дим) Другим способом проблему решил.

Dmitriy
09.03.2017
21:10:41
User.email_user так же позволяет прокинуть connection

Google
Alexandr
09.03.2017
21:12:24
Спасибо, ориентир дал, дальше сам разберусь) Помог.

Pavel
09.03.2017
21:37:41
Что-то туплю, как валидировать модели принято, если они создаются не через форму. Например, есть модуль импорта, который не должен создавать валидные лишь с точки зрения БД записи, а должен проверить что-то дополнительно?

Alexandr
09.03.2017
21:50:12
https://docs.djangoproject.com/en/1.10/ref/models/instances/#validating-objects

Yenq
10.03.2017
07:42:18
Ребят, где можно найти сорцы какого-нибудь не очень сложного проекта жанги, для обучения чтением чужих кодов)))

Нужно сделать что то Аля доска обьявлений

Как авито только пооще

Может кто знает что то похожее с сорцыми

Admin
ERROR: S client not available

Yenq
10.03.2017
07:43:16
Ибо на гите не нашел ничего подходящего

Ruslan
10.03.2017
07:43:21
djbook.ru открыт, но он староват :)

а, тебе авито нужен :)

Yenq
10.03.2017
07:43:45
Ну не пвито

Чисто доска объявлений

Или что то в этом роде

Дабы взять как шаблон

Ruslan
10.03.2017
07:44:38
ссылку я дал, для шаблона и старта хватит за глаза

Yenq
10.03.2017
07:44:57
Хорошо) Спасибо)

Мощно, 1к коммитов

Разбираться долго буду)))))

Ruslan
10.03.2017
07:52:13
туториал в доке почитай и сразу в код смотри, к вечеру сообразишь

Google
Ruslan
10.03.2017
07:52:44
продлил домен, ещё год потрепыхаемся

Artyom
10.03.2017
08:25:14
опять я с формами, не могу понять, почему вот так вот? Как мне получить все таки всезначения? request.POST['screenshots'] отдает screenshots_3 , хотя выделены 1 и 3 В самой форме: screenshots = forms.MultipleChoiceField(label='Скриншоты', widget=forms.CheckboxSelectMultiple, choices=()) в конструктор отдаю choices и делаю вот так: def __init__(self, choices={}, *args, **kwargs): super(FooForm, self).__init__(*args, **kwargs) self.fields['screenshots'].choices = choices.setdefault('screenshots', (('None', 'Нет скриншотов'),))

Denis
10.03.2017
08:27:34
Поставь брейкпоинты раз не понимаешь, пройдись дебаггером

прям построчно

Artyom
10.03.2017
08:56:59
Поставь брейкпоинты раз не понимаешь, пройдись дебаггером
в дебаггере пост это querydict, на скрине я отметил, что в нем содержится screenshots с двумя значениями screenshot1 и screenshot2, одна когда я пытаюсь вывести содержимое screenshots, выводиться только последний элемент, почему так?

первая строчка на скрине - видно, что скриншотс это список, когда разворачиваю - скриншотс это строка

переформулирую вопрос: post = request.POST в дебагерре post = <QueryDict: {'screenshots': ['screenshot_1', 'screenshot_3', 'screenshot_4']}> делаю print(post['screenshots']) >>> 'screenshot_4' Почему так? Как мне получить все значения?

Artyom
10.03.2017
09:27:44
нагуглил, надо преобразовывать querydict в dict

Eugene
10.03.2017
09:41:40
Ребята, есть загружаемых файлы, например /media/resume/file.pdf Как ограничить для них доступ можно? Ну и не давать Гуглу индексировать(ну это вроде через robots.txt) А вот как по ссылке доступ ограничить?

A
10.03.2017
09:49:03
Чёркать ип допустим. Робот.тхт туда запихать

I
10.03.2017
09:50:02
nginx'ом можно ограничить доступ

Eugene
10.03.2017
09:51:01
Через security_link да?

Вот думаю правильно ли я копаю

Pavel
10.03.2017
11:04:29
Ребят, где можно найти сорцы какого-нибудь не очень сложного проекта жанги, для обучения чтением чужих кодов)))
У мозиллы есть различные проекты на джанге, типа addons.mozilla.org и других. Еще есть https://github.com/getsentry/sentry https://github.com/taigaio/taiga-back/ может какие-то идеи возьмешь

Diskord
10.03.2017
11:09:12
я сейчас мозила гайд по джанге читаю

Alex
10.03.2017
11:09:34
так лучше же по видео урокам

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