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

creazero
09.12.2017
20:57:52

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, но лучше сразу заморочиться на нормальных бд

Panda
09.12.2017
21:20:48

Google

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

Senpos
09.12.2017
21:33:25

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

Serj
10.12.2017
00:01:54

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 - это создание юзера админки джанго
к базе этот пользователь отношение имеет только то, что он в ней хранится)
а вообще - кодить в сонном состоянии - неблагодарное дело. лучше проснись пораньше

Panda
10.12.2017
00:29:57

b0g3r
10.12.2017
00:30:32
вопрос не понял
рулит парадом - это насколько сильно рулит?)

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

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

Panda
10.12.2017
00:31:48

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


Гийденко
10.12.2017
06:34:34
Да
Вручную даблкликом все стартует норм

Sergey
10.12.2017
06:49:28

Гийденко
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, но так не понял можно ли там это сделать.

creazero
10.12.2017
12:59:43

Google

Art
10.12.2017
13:01:27
А. required=False.

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

Rookie
10.12.2017
13:16:50

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.
Статьи по этим двум запросам распишут готовые рецепты.

Nikita
10.12.2017
13:20:03

Rookie
10.12.2017
13:20:40

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

Nikita
10.12.2017
14:17:16

Set
10.12.2017
14:42:39

Nikita
10.12.2017
14:50:40
тем более к чему эти костыли когда можно средствами джанго это делать

Set
10.12.2017
14:51:32
а форма к views привязана
все что в форме находится поидее должно приходить.

Google

Rookie
10.12.2017
14:52:29

Set
10.12.2017
14:53:06

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

Set
10.12.2017
14:56:21

Rookie
10.12.2017
14:56:58

Set
10.12.2017
14:57:56

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 само собой не выходит, но вообще это было бы идеально для меня