
X
15.08.2017
05:42:04
Создай попарно
Модель1 и модель 2 связаны оТо филд
Заполни посмотри

Massimo
15.08.2017
05:43:01
ну оТо это простой форейнки

Google

X
15.08.2017
05:43:08
Потом оТо Филд передай на фореин

Massimo
15.08.2017
05:43:36
Можно связать две модели не только через ФК?

X
15.08.2017
05:44:56
https://djbook.ru/rel1.7/topics/db/examples/many_to_one.html
https://djbook.ru/rel1.9/topics/db/examples/one_to_one.html
Ты можешь использовать фореин Кей дляоТо Филд его это неправильно

Дмитрий
15.08.2017
05:59:33
Не могу понять как настроить статические папки и медиа

Artyem
15.08.2017
06:00:12
ну оТо это простой форейнки
не совсем, со стороны бд это ещё отдельное ограничение уникальности. со стороны орм также немного другое отношение, без разницы с какой таблицы происходит обращение эта связь будет считаться "прямой".

Dan
15.08.2017
06:00:35

Senpos
15.08.2017
06:00:48
Доброе утро.
Пытаюсь оптимизировать количество запросов при помощи select_related / prefetch_related, но как-то слабо осознаю как их применить в данном случае.
Есть вью List - https://github.com/kennethlove/django_bookmarks/blob/master/dj_bookmarks/bookmarks/views.py#L12
Есть модель Bookmark https://github.com/kennethlove/django_bookmarks/blob/master/dj_bookmarks/bookmarks/models.py#L19
И есть такие SQL-запросы (изображение из Django Debug Toolbar: http://i.imgur.com/VS4G9fU.jpg)
Видно, что запросы для taggit дублируются и можно было бы (наверное) объеденить их в один.
Так, вопрос о тэгах отпадает, помогло
queryset = models.Bookmark.objects.current(self.request.user).prefetch_related('tags')
Но остались еще запросы к пользователю и его профилю. :)

Дмитрий
15.08.2017
06:02:21
А в чем проблема?
Не могу настроить переменные в настройках. На любой статический файл выбивает 404

Dan
15.08.2017
06:03:22
Запускаешь локально через runserver?

Google

Дмитрий
15.08.2017
06:03:59
Да

Senpos
15.08.2017
06:04:26
Я пользуюсь вот такими:
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static"),
]
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, "media")
И вроде работает все хорошо.

Dan
15.08.2017
06:05:11
В сеттингсах static_root, static_url, statifiles_finder?

Дмитрий
15.08.2017
06:05:26
_PATH = os.path.abspath(os.path.dirname(__file__))
MEDIA_ROOT = os.path.join(_PATH, 'components', 'media')
MEDIA_URL = '/media/'
STATIC_ROOT = os.path.join(_PATH, 'components', 'static')
STATIC_URL = '/static/'
STATICFILES_DIRS = (os.path.join(_PATH, 'static'), )
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder', )
ADMIN_MEDIA_PREFIX = '/static/admin/'
TRUMBOWYG_UPLOAD_PATH = os.path.join(MEDIA_ROOT, 'uploads')
Соотвтетственно вся статика лежит в папке components/static, которая в корне проекта, рядом с прилождениями

Sergey
15.08.2017
07:17:12
в django twig или нет? как к гуглу вопросы задавать?
в частности хочу округлить до целых во view
нашёл, |floatformat

Eugene
15.08.2017
07:20:09
Django template

Sergey
15.08.2017
07:24:35
Это наверное потому, что залил данные вместе с id

Massimo
15.08.2017
07:26:59
widgets = { 'unload_time': forms.DateTimeInput(
attrs={'id': 'unload-time-form', 'required': False}
)}
Как сюда вставить input_formats? Или в виджеты этого делать нельзя?
'unload_time': forms.DateTimeInput(format=('%d-%m-%Y %H:%M'),
attrs={'id': 'unload-time-form', 'required': False}
),
Почему то форму не валидатит

Дмитрий
15.08.2017
08:25:21
Странная фигня, только так и заработало. На os.path вообще не реагирует
MEDIA_ROOT = 'components/media/'
MEDIA_URL = '/media/'
STATIC_ROOT = ''
STATIC_URL = '/static/'
STATICFILES_DIRS = [
('components/static/'),
('static/')
]
ADMIN_MEDIA_PREFIX = '/static/admin/'
TRUMBOWYG_UPLOAD_PATH = 'uploads'

Eugene
15.08.2017
08:31:35
может есть у вас Two Scoops of Django которая именно 1.11 под рукой?

Nikita
15.08.2017
08:32:22
так в гугле же есть

Sergey
15.08.2017
08:34:42
подскажите, если мне несколько данных передать надо, подойдёт class ListView ?
или же def finance_listview(request) использовать?

Eugene
15.08.2017
08:35:30

Google

Nikita
15.08.2017
08:36:04
надеюсь меня не забанят))

Eugene
15.08.2017
08:36:25

Eugene
15.08.2017
08:36:38

xPushkin
15.08.2017
08:37:04

Mikhail
15.08.2017
08:37:33
но не нужно
кастомный контекст почти наверняка означает, что в этом случае CBV не нужны

Sergey
15.08.2017
08:38:12
понял, сделаю этот момент без ListView

xPushkin
15.08.2017
08:38:29

Mikhail
15.08.2017
08:38:51
не поверите - знаю :)
тут каждый день одна история офигительнее другой. То fbv объявили устаревшими, то ещё что

xPushkin
15.08.2017
08:39:47

Mikhail
15.08.2017
08:40:06
возможно

Mikhail
15.08.2017
08:40:45
вообще, у меня сложилось такое мнение, что неприятие FBV и лёгкого копипаста - это юношеский максимализм
(сам таким был, чего греха таить)

Massimo
15.08.2017
08:42:28
https://dpaste.de/wR3v Кто может подсказать в чем тут проблема? Формат д-м-год не зочет читать через input_formats, потом если делать через format виджета то он не валидатит форму

Mikhail
15.08.2017
08:42:34
но когда, к примеру, переписав половину вьюшек на функции и выкинув DRF в пользу ручной обработки, получаешь более лакончиный код и 10-кратное ускорение, просто познаёшь дзен

Sergey
15.08.2017
08:47:42
прошу, направьте... как правильно сделать постраничную выдачу, хочу выдать всю инфу - более тысячи строк данных, но разбив на страницы или как-то красиво

Eugene
15.08.2017
08:48:03
paginate_by = Number
https://docs.djangoproject.com/en/1.11/topics/pagination/ ну или так

Artyem
15.08.2017
08:50:33

Google

John
15.08.2017
08:51:23
Парни, а можно изи джанги достучаться до корневой директории файловой системы?

Alex
15.08.2017
08:51:32

Massimo
15.08.2017
08:51:49

Artyem
15.08.2017
08:57:13

Admin
ERROR: S client not available

Sergey
15.08.2017
08:57:49

John
15.08.2017
08:58:04
спасибо!

Massimo
15.08.2017
08:59:03
Там есть formats по дефолту, которое он распознает в виджеье, если выбрать из списка дефолта то валидацию проходит, если свой формат то нет

Artyem
15.08.2017
09:01:12

Massimo
15.08.2017
09:08:26
Окей Сейчас попробую

John
15.08.2017
09:19:38
Народ, такой вопрос. Что в себя должен принимать filter_horizontal? Когда я в него передаю список он мне кидает вот т акую ошибку http://joxi.ru/Y2L4V4yTnvGd62

Call Me Maybe
15.08.2017
09:21:25

John
15.08.2017
09:22:34
спасибо!

Senpos
15.08.2017
09:53:59
Я про предыдущие настройки, не про эти.

John
15.08.2017
10:02:48
Подскажити пожалуйста. Как запилить в модель заранее подготовленный спиок?

Massimo
15.08.2017
10:02:51

Artyem
15.08.2017
10:17:59

Sergey
15.08.2017
10:18:44

Google

123
15.08.2017
10:25:59
Edit

Massimo
15.08.2017
10:26:21

Artyem
15.08.2017
10:27:25

Massimo
15.08.2017
10:27:47
input_formats=["%d-%m-%Y %H:%M"]
вот так?

Artyem
15.08.2017
10:28:02
ага, должно всё сработать

Massimo
15.08.2017
10:29:04
'2017-08-12 11:17:00'
Теперь вот ээто выдает хотя
input_formats=["%d-%m-%Y %H:%M"]
format=('%d-%m-%Y %H:%M'

Artyem
15.08.2017
10:31:18
если там всякие datetime пикеры есть

Massimo
15.08.2017
10:32:54


Dmitriy
15.08.2017
10:33:57
Товарищи, очень нуждаюсь в помощи. Накатил на боевой сервер недостаточно протестированные изменения, создал одну миграцию. Потом понял, что поломалась одна ключевая функция и откатил hard reset'ом на несколько коммитов назад. Запускаю, теперь приходит такая ошибка
IntegrityError: null value in column "payment_order_id" violates not-null constraint
DETAIL: Failing row contains (2092, 761, 2017-08-15 07:28:32.055+00, 2a4fb62a-df86-45b3-9df2-03da72675721, 15, 2017-08-15 07:32:38.928484+00, 2017-08-15 07:32:38.928524+00, 0, 0, 67c8bada-5e05-4671-9c66-1d14df38ba56, null).
Я так понимаю, дело в том, что в БД сейчас создано новое поле payment_order_id, которого уже нет в models.py?
Как можно синхронизировать всё? python manage.py migrate не помогает, пишет что всё ок

xPushkin
15.08.2017
10:35:00

Dmitriy
15.08.2017
10:35:31
О, сейчас попробую
Спасибо