@pydjango

Страница 782 из 1273
Grigore
09.12.2017
20:57:43
Просто потому что там хранятся и тесплеты и локаль и статика

creazero
09.12.2017
20:57:52
Вообще apps не очень название )
почему? информативно, а что еще надо?

Просто потому что там хранятся и тесплеты и локаль и статика
ну так можно вообще с ума сойти и создать еще одну папку проекта, в ней static, templates, apps, locale и тд

Grigore
09.12.2017
20:59:02
Не

Google
Grigore
09.12.2017
20:59:10
Я делаю так

Папку проекта дополняют в имени project

А вот папку со всем этим чудом без этого дополнения

Shop_project shop

Короче пустой холивар

creazero
09.12.2017
21:01:32
ну не холивар, я просто пытаюсь понять как делают в продакшене

Panda
09.12.2017
21:01:32
Короче пустой холивар
Не, для меня очень информативно все:) всем спасибо

Senpos
09.12.2017
21:01:36
Интересно почитать кто как делает)

creazero
09.12.2017
21:04:20
дисклеймер: все мои советы основаны на two scoops of django и все. в продакшене джангой я никогда не пользовался

Panda
09.12.2017
21:14:09
А ещё такой вопрос. Сейчас для простого блога идет sqlite, но мне вообще нужен будет постгрес. Лучше сразу с постгресом или потом смогу "безболезненно" поменять бд?

vadim
09.12.2017
21:14:48
зависит от нагрузки

если за рамки ORM не выходить, то можно и sqlite, но лучше сразу заморочиться на нормальных бд

Google
vadim
09.12.2017
21:27:52
Интересно почитать кто как делает)
полностью если продакшен есть ansible конфа, ставит автоматом - nginx, uwsgi(в режиме emperor - это когда просто пуляешь в папку конфиг и он сам радостно подымает еще один прожект автоматом), postgres остальное - типа редисов или др баз в docker папки, как пример http://joxi.net/12M4geKT4QyJQm фронт сразу отделяем от бекенда -в итоге 2 репы в git, версталы могут независимо колбасить полностью в связке с nunjacks, не зная чего там на бекенде, вывод шаблонов. Те бекендеру только раскидать переменные и все (в идеале)

vadim
09.12.2017
21:35:48
угу только порог входа не самый низкий, чтобы нормально роли раскидать, время надо хотя можно цинично править примеры в github

Serj
10.12.2017
00:01:54
Имхо, ./manage.py набирать быстрее, чем config/manage.py
кто-то набирает это ручками каждый раз вместо того чтобы юзать алиасы?

Alexander
10.12.2017
00:19:44
не вникал особо, но если выше споры про деплоймент, то Ansible + Docker норм

Panda
10.12.2017
00:26:28
Ребята, подскажите такой вопрос. Вот я поставил постгрес. Там сделал отдельного юзера под проект, потом сделал под проект базу. Когда выполняем manage.py createsuperuser - это какого юзера создаем?

из settings.py ?

Или какого-то другого? Что-то я под утро нереально туплю

b0g3r
10.12.2017
00:28:27
createsuperuser - это создание юзера админки джанго

к базе этот пользователь отношение имеет только то, что он в ней хранится)

а вообще - кодить в сонном состоянии - неблагодарное дело. лучше проснись пораньше

b0g3r
10.12.2017
00:30:32
вопрос не понял

рулит парадом - это насколько сильно рулит?)

Panda
10.12.2017
00:31:16
ну кто главный в джанго получается? админ бд, т.к может вырубить этого суперюзера админа джанго

b0g3r
10.12.2017
00:31:46
ну формально да - админ базы

Serj
10.12.2017
00:33:20
только к фреймворку он никак не относится

Panda
10.12.2017
00:35:36
а ещё такой вопрос: имя пользователя с точкой(".") создал в бд, но была ошибка, которая указывала на точку. Но юзер такой создался

Google
Panda
10.12.2017
00:35:43
Чем в дальнейшем грозит эта точка?

Panda.Balu юзер, чтоб понятнее

Alexander
10.12.2017
01:15:18
т.е рулит парадом админ бд?
программистам вообще доступа к настоящей базе данных не дают

они делают на тестовой базе данных, без доступа к реальным данным

это если нормально безопасники работают)

это существенно снижает риски утечки конфиденциальных данных

Dude
10.12.2017
02:06:25
Не подскажите какие-нибудь интересные opensource проекты ?

amureki
10.12.2017
02:09:37
Dude
10.12.2017
02:33:17
Спасибо , а есть годный ман по react+Django ?

Sergey
10.12.2017
05:58:26
Есть модель Obj, на неё через related_name='scans' ссылается Scan class Scan created_at = DateTimeField obj = ForeignKey(Obj, related_name'scans' class Obj в темплейте выводим список Obj и для каждого нужно вывести время последнего сканирования Obj.scans.order_by(-created_at).first().created_at Сейчас на каждый объект Obj дополнительно выполняется 1 SQL запрос, пытаюсь написать prefetch_related для уменьшения запросов, с таким кодом ошибка AttributeError 'Scan' object has no attribute '_iterable_class' .prefetch_related(Prefetch('scans', queryset=Scan.objects.order_by('-created_at').first(), to_attr='last_scan')

Гийденко
10.12.2017
06:26:47
немного не в тему django но из того же проекта. Нужно чтобы клиент для сервера стартовал автозапуском в линуксе. В даный момент Mint, но в общем то проблема везде. Требуется чтобы запускался файл /home/paul/.config/autostart/tray.desktop Сам файл сделан из рядом лежащего файла от Dropbox (который работает), только поменял параметр Exec и имя. Соответствующий пункт появляется в StartupApplications и даже стартует по кнопке Run Now. НО во время запуска системы отказывается запускаться хоть тресни! Файл так выглядит [Desktop Entry] Name=Tray Icon Comment=Tray Icon GenericName=Tray Icon Exec=tray Path=/home/paul/Desktop/ti Terminal=false Type=Application Icon=/home/paul/Desktop/ti/tray.png Categories=GNOME;GTK;Graphics;3DGraphics; X-GNOME-Autostart-enabled=true команда tray это файл /usr/bin/tray где код такой #!/bin/bash python /home/paul/Desktop/ti/tray_icon.py Что интересно! Добавил в код создание файла, и он создаётся. Но прилжение не стартует. Видимо я что-то гдето не дописал? Скорее всего ошибка гдето. В логах вроде пусто, аутпут пустой тоже если написать так `python /home/paul/Desktop/ti/tray_icon.py >> /var/logs/tray`` Как правильно автостарт наладить? Спасибо

Sergey
10.12.2017
06:34:22
немного не в тему django но из того же проекта. Нужно чтобы клиент для сервера стартовал автозапуском в линуксе. В даный момент Mint, но в общем то проблема везде. Требуется чтобы запускался файл /home/paul/.config/autostart/tray.desktop Сам файл сделан из рядом лежащего файла от Dropbox (который работает), только поменял параметр Exec и имя. Соответствующий пункт появляется в StartupApplications и даже стартует по кнопке Run Now. НО во время запуска системы отказывается запускаться хоть тресни! Файл так выглядит [Desktop Entry] Name=Tray Icon Comment=Tray Icon GenericName=Tray Icon Exec=tray Path=/home/paul/Desktop/ti Terminal=false Type=Application Icon=/home/paul/Desktop/ti/tray.png Categories=GNOME;GTK;Graphics;3DGraphics; X-GNOME-Autostart-enabled=true команда tray это файл /usr/bin/tray где код такой #!/bin/bash python /home/paul/Desktop/ti/tray_icon.py Что интересно! Добавил в код создание файла, и он создаётся. Но прилжение не стартует. Видимо я что-то гдето не дописал? Скорее всего ошибка гдето. В логах вроде пусто, аутпут пустой тоже если написать так `python /home/paul/Desktop/ti/tray_icon.py >> /var/logs/tray`` Как правильно автостарт наладить? Спасибо
флаг x стоит на /usr/bin/tray? chmod +x /usr/bin/tray

Гийденко
10.12.2017
06:34:34
Да

Вручную даблкликом все стартует норм

Гийденко
10.12.2017
06:53:53
Вручную даблкликом все стартует норм
в общем баг в самой cinnamon, он не показывает иконки стартапного прилжения. На самом деле оно стартует но не видно именно иконки. Инетерсно теперь как это решает дропбокс

Senpos
10.12.2017
12:36:08
Использует кто кастомную slugify функцию в SlugField'e? В pre_save сигнале применяете? Или по другому как-то?

Понравился https://github.com/dimka665/awesome-slugify Хочу заюзать

Art
10.12.2017
12:51:32
Halp Тыкаю тут DRF. Вот есть у меня две модели: Модель_1 и Модель_2. В Модель_1 есть FK на Модель_2. Как мне сделать так, чтобы можно быть запрашивать просто данные из Модель_1, но иногда добавлять к ней данные (не только id) из Модель_2? То есть сделать просто /api/Модель_1/ и, например,/api/Модель_1/?include=Модель_2. Посмотрел ещё на DRF JSON API, но так не понял можно ли там это сделать.

Google
Art
10.12.2017
13:01:27
добавить related_field в сериалайзер. related_field = Model2Serializer(required=False)
Так он же тогда всегда будет добавлять Модель_2.

А. required=False.

добавить related_field в сериалайзер. related_field = Model2Serializer(required=False)
Сделал. Возвращается всё равно в ответе.

Nikita
10.12.2017
13:14:58
Всем привет. Может кто подсказать, пожалуйста, по формам? Суть: на странице есть много разных форм, в них вбиваются значения, потом жмется submit, и данные с форм должны как-то обработаться. Но сейчас в данные запроса отправляется только csrf токен. Как туда подложить еще и данные форм (что в них лежит на момент нажатия)?

По доке джанговской не удалось понять

Nikita
10.12.2017
13:16:56
Admin
ERROR: S client not available

Rookie
10.12.2017
13:18:46
да
Тогда посмотрите prefix django forms. Так и гуглите. Это и one button submit several forms in one view django. Статьи по этим двум запросам распишут готовые рецепты.

Rookie
10.12.2017
13:20:40
Спасибо большое. Буду смотреть.
На СО классические примеры. Там даже думать не придётся.

Senpos
10.12.2017
13:29:22
В django-ckeditor есть возможность выводить чистый текст, без разметки, по требованию? Например, если надо статью отдать в фид, а не просто на сайт

Nikita
10.12.2017
14:17:16
Nikita
10.12.2017
14:50:40
js + post метод
js нельзя)

тем более к чему эти костыли когда можно средствами джанго это делать

Set
10.12.2017
14:51:32
а форма к views привязана

все что в форме находится поидее должно приходить.

Google
Rookie
10.12.2017
14:52:29
js нельзя)
Любопытно.

Set
10.12.2017
14:53:06
Любопытно.
согласись с js намного лучше?

Rookie
10.12.2017
14:54:23
согласись с js намного лучше?
Очевидно, есть условия, не позволяющие это. Я использую ajax, если у меня более 2-х сабмит кнопок на странице, например.

Или я использую js, если не хочу ради какого то экшна (разные кейсы есть) тащить post метод во вьюху.

Rookie
10.12.2017
14:56:58
надо было дописать ajax ...
О_о А js в этом контексте не подразумевал этого?

Senpos
10.12.2017
15:02:22
Как сделать проперти у модели is_published и кверисет published без дублирования кода? class PostQuerySet(models.QuerySet): def published(self): return self.filter(is_published=True) class Post(BaseModel): published_at = models.DateTimeField() is_active = models.BooleanField(default=False) objects = PostQuerySet.as_manager() def is_published(self): return self.is_active and self.published_at <= timezone.now() is_published.boolean = True Хотелось бы что-то вроде такого :)

Если это в принципе возможно В исходниках djangoproject решили продублировать https://github.com/django/djangoproject.com/blob/master/blog/models.py#L24 https://github.com/django/djangoproject.com/blob/master/blog/models.py#L82

Anb
10.12.2017
15:22:43
эм* а где тут дублирование кода?

Senpos
10.12.2017
15:24:32
эм* а где тут дублирование кода?
В двух местах проверяется, что дата публикации в прошлом. Было бы круто сделать один метод is_published и использовать его как в кверисете, так и в роли проперти Так или иначе, я отказался от проперти, черт бы с ней)

Sergey
10.12.2017
15:32:35
mixin тут не подойдёт?

PR
10.12.2017
15:33:15
эбаш reduce

не туда

Rookie
10.12.2017
15:43:46
mixin тут не подойдёт?
class MixQuerySet(models.Model): def check_any(self, **kwargs): return self._meta.concrete_model.filter(**kwargs) abstract = True Не особенно думаю, просто навскидку сразу.

Ivan
10.12.2017
15:46:54
Заведётся ли Django с такой конфигурацией uwsgi ?

[uwsgi] project = {{vhost.name}} base = /home/u{{vhost.userid}} uid = vhost_{{vhost.unid}} gid = vhost_{{vhost.unid}} chdir = /home/u{{vhost.userid}}/web/{{vhost.name}} module = {{vhost.name}}.wsgi:application master = true processes = 2 threads = 4 socket = /run/vhost{{vhost.unid}}.sock chmod-socket = 664 touch-reload =/home/u{{vhost.userid}}/web/{{vhost.name}}/touch_reload vacuum = true buffer-size = 8192 listen = 128 harakiri = 300

Ahmed
10.12.2017
17:06:22
Ребята, кто-нибудь настраивал gitlab CI для прогонов тестов?

Jentry
10.12.2017
17:23:16
Мне нужно статично для окружения устанавливать translation. Куда бы можно грамотно сунуть translation.activate? В settings само собой не выходит, но вообще это было бы идеально для меня

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