@pydjango

Страница 961 из 1273
Dan
15.02.2018
12:40:47
Привет. Вопрос: нужны ли мне знания js, jquery для изучения джанго. Покрайней мере на начальном этапе?
повезет, вообще с ними не столкнешься =) но в идеале знать js должен

Dan
15.02.2018
12:41:27
вообще да

но настоятельно не рекомендуют

Google
Senpos
15.02.2018
12:41:37
kino
15.02.2018
12:44:13
Мне не даёт покоя этот вопрос расскажите в чем разница

как у джанги принято получать данные:через поля модели или через queryset.values()?

Dan
15.02.2018
12:44:40
через поля

values используется при группировке или обрезании лишних полей

Eugene
15.02.2018
12:48:08
Вам к верстальщикам

Artem
15.02.2018
12:49:30
values используется при группировке или обрезании лишних полей
порой не хватает того, что бы при использовании .value_list('pk', flat=True) я получал прям лист, а не QueryList

толи написать себе классметод, аки .to_list()

Dan
15.02.2018
12:51:16
а чем list(qs) не устраивает ?

Artem
15.02.2018
12:51:49
а он потом дергает запрос еще раз

или не дергает, просто я в своем случае делаю .order_by('?')

Massimo
15.02.2018
12:52:32
Google
Artem
15.02.2018
12:52:36
ну незнаю, по мне так себе конструкция, оборачивать потом еще в list()

Dan
15.02.2018
12:52:40
вроде не должен дергать

Artem
15.02.2018
12:53:09
Это же плохо
ну почему же? Когда база сама получит рандом, да конечно перекрутит все записи, но получу точный рандом, да и выполняется он в таске и очень редко

Eugene
15.02.2018
12:54:20
Ну ладно, просто в доке прям вроде как не советуют такое делать

Ruslan
15.02.2018
12:59:46
Ребят, привет. Я сделал свой самый первый проект на Django (и на Python в целом). Вернее я его еще не сделал, а только самое начало. На данный момент у меня там только блог, где доступен просмотр всех статей и детальный просмотр одной (с возможностью листания на следующую/предыдущую), и авторизация + регистрация. Просмотр статей в блоге разрешен только авторизованным пользователям. Создание статей - через стандартную админку Django. Деплоить это на сервак с nginx+uwsgi еще не решился, поэтому показать немогу( Попробовал даже покрыть некоторые методы тестами (получить покрыть 4 метода), что кстати дало мне приемущество, я несколько баг заметил при юнит-тестинге, которые при ручном тестировании не замечал) Сейчас я хочу попросить , кому не трудно, дать жесткую критику и сказать, что не так делаю. Прошу на столь раннем этапе проекта, поскольку мне кажется у меня какие-то фундаментальные есть ошибки, хочу их сразу увидеть и при дальнейшем построении проекта не допускать:) P.S. - проект делаю как и для повышения (пока что нулевых) скиллов, так и положить в портфолио, чтобы показать на собеседовании на стажера/джуна

https://github.com/twilightrus/hooli

Dan
15.02.2018
13:04:30
Ребят, привет. Я сделал свой самый первый проект на Django (и на Python в целом). Вернее я его еще не сделал, а только самое начало. На данный момент у меня там только блог, где доступен просмотр всех статей и детальный просмотр одной (с возможностью листания на следующую/предыдущую), и авторизация + регистрация. Просмотр статей в блоге разрешен только авторизованным пользователям. Создание статей - через стандартную админку Django. Деплоить это на сервак с nginx+uwsgi еще не решился, поэтому показать немогу( Попробовал даже покрыть некоторые методы тестами (получить покрыть 4 метода), что кстати дало мне приемущество, я несколько баг заметил при юнит-тестинге, которые при ручном тестировании не замечал) Сейчас я хочу попросить , кому не трудно, дать жесткую критику и сказать, что не так делаю. Прошу на столь раннем этапе проекта, поскольку мне кажется у меня какие-то фундаментальные есть ошибки, хочу их сразу увидеть и при дальнейшем построении проекта не допускать:) P.S. - проект делаю как и для повышения (пока что нулевых) скиллов, так и положить в портфолио, чтобы показать на собеседовании на стажера/джуна
ну если для портфолио не сот модуль называть обидными словами

Eugene
15.02.2018
13:05:04
?settings.py.example

Ruslan
15.02.2018
13:05:22
ну если для портфолио не сот модуль называть обидными словами
А, это я не знал как проект назвать, первое что пришло в голову, из sillicon valley - компания hooli.

Eugene
15.02.2018
13:05:35
Посмотри в сторону Class based views :)

Dan
15.02.2018
13:05:53
не стоит изливать все что приходит в голову =)

Ruslan
15.02.2018
13:06:31
?settings.py.example
А как принято выкладывать конфиг в питоновских проектах? Я оригинальный скрыл, и выложил example для заполнения и переименовывания под себя, так как там БД и остальное.

Eugene
15.02.2018
13:06:34
https://github.com/twilightrus/hooli/blob/master/blog/models.py#L5 хз на скок норм в модели Article делать еще и article_*

Senpos
15.02.2018
13:06:55
class Article(models.Model): article_title = models.CharField(max_length=200) article_image = models.URLField(max_length=300) article_text = models.TextField(default="") pub_date = models.DateTimeField('date published') Приставка article у полей лишняя, они и так внутри статьи Для URLField я бы не делал макс. размер в 300 символов. Рекомендуют для чарфилдов не больше 255: https://docs.djangoproject.com/en/dev/ref/databases/#character-fields У джанги есть свой хороший пагинатор, лучше использовать его

Bulatbulat48
15.02.2018
13:07:24
ребят как вытянуть данные модели без метода str ?

Eugene
15.02.2018
13:07:30
у urlfield там дефолтный в django max_length норм)

Senpos
15.02.2018
13:07:34
Раз используешь админку для создания статей - рекомендую ее кастомизировать. Там куча полезных настроек для поиска, фильтров и тд.

Dan
15.02.2018
13:08:26
https://github.com/twilightrus/hooli/blob/fdabc63a06a11cf55fa721756a48e9073d48876d/hooli/urls.py#L21 если регулярка не используется лучше использовать path

Eugene
15.02.2018
13:08:41
?по какому-то старому туториалу делал?))

Dan
15.02.2018
13:09:02
там смесь походу

Google
Senpos
15.02.2018
13:09:27
Шаблоны внимательней посмотри, там можно сделать базовый шаблон и наследоваться от него, чтобы не переписывать кучу раз одно и то же

Dan
15.02.2018
13:10:00
HttpResponseRedirect есть shortcut - redirect

Eugene
15.02.2018
13:10:15
https://github.com/twilightrus/hooli/blob/master/blog/urls.py ну и тут можно на path переписать

Senpos
15.02.2018
13:10:55
Получается, нельзя =) Блин, как-то неудобно ?

Ruslan
15.02.2018
13:12:53
- Дефолтные чарфилды и urlfield - Приставка article лишняя. - Class based views - шорткаты для Http* - для НЕрегулярок path() вместо url() - Наследование и расширение шаблонов

Pavel
15.02.2018
13:13:33
Получается, нельзя =) Блин, как-то неудобно ?
Вопросы к Дэну Тяну, он говорил что можно.

Senpos
15.02.2018
13:13:34
+ Использование extends / include в шаблонах + использовать встроенный пагинатор, а не свой

Ruslan
15.02.2018
13:13:49
там смесь походу
Смесь гугления, костылей, и велосипедов) Маны из 1.4/1.8 тоже возможны)

Dan
15.02.2018
13:14:00
https://github.com/twilightrus/hooli/blob/fdabc63a06a11cf55fa721756a48e9073d48876d/users/tests.py#L26 create_user уже сохраняет, не надо его еще раз сохранять

но потом прочитал что тек не стоит делать и перестал

Dan
15.02.2018
13:15:20
на самомо деле таски хранятся в брокере(redis) и туда надо как то запихнуть объект модели а он не всегда впихуем

Eugene
15.02.2018
13:15:31
https://github.com/twilightrus/hooli/blob/fdabc63a06a11cf55fa721756a48e9073d48876d/users/forms.py ?хмм

class ErrorForm: ???

Pavel
15.02.2018
13:16:36
Ruslan
15.02.2018
13:16:43
+ Использование extends / include в шаблонах + использовать встроенный пагинатор, а не свой
А по поводу пагинатора, это же скорее страницы. А у меня просто следующая\предыдущая статья относительно текущей. Или они тоже с этим справляются?

Artyem
15.02.2018
13:17:40
:О kombu.exceptions.EncodeError: Object of type 'Message' is not JSON serializable
так сериализатор другой ннада, там вроде пикл каким-то образом можно прикрутить, и тогда объекты модели спокойно засериализуются, и возможно будут работать после распаковки

Dan
15.02.2018
13:17:44
Возможно есть брокеры, которые так умеют. Но я плохо в селери знаю.
там проблема в том что объект может именится когда подойдет очередь и может произойти неожиданное

https://github.com/twilightrus/hooli/blob/fdabc63a06a11cf55fa721756a48e9073d48876d/users/forms.py#L35 лучше использовать ModelForm а еще лучше уже готовые формы из джанги

Google
Senpos
15.02.2018
13:21:30
В общем, оформим сейчас эти таски по другому, спасибо за подсказки

Pavel
15.02.2018
13:22:28
Senpos
15.02.2018
13:22:36
ага, так и сделал

Ruslan
15.02.2018
13:23:34
class ErrorForm: ???
Назвал неправильно класс и методы, или вообще не стоило выносить это в Mix-in класс?

Dan
15.02.2018
13:25:11
@twilightrus https://github.com/twilightrus/hooli/blob/e4ceab8ce68fc055692a11b78aa0976e6acbc929/blog/views.py#L14 нет пагинации

Massimo
15.02.2018
13:25:26
Если в модели есть м2м поле через которое привязаны объекты, в темплейте объекты как отобразить? {% for item in qs %} {% for newitem in item.m2mfield %} {% endfor %} {% endfor %}

Admin
ERROR: S client not available

Ruslan
15.02.2018
13:26:17
просто не понял зачем это:)
Чтобы не дублировать код во вьюхах, я свои велосипеды получается написал, для проверки в темплейте на наличие ошибок и получения списка ошибок, а то я не нашел как правильно пользоваться джанговскими методами для получения списка ошибок без HTML-кода перед ними (типа ul)

Там просто для получения ошибочных данных нужно 2 цикла писать, так что у меня было 2 выбора, либо выносить в темплейт-тэг, либо вот в такие методы в mix-in класс и наследоваться от него

Massimo
15.02.2018
13:29:26
{% for newitem in item.m2mfield.all %}
Он почему то выводит все объекты этой модели но не все объекты закреплены за item

Denis
15.02.2018
13:33:37
ребят что делают не так? не могу подключить juery локально. <!— jQuery —> <script src="https://code.jquery.com/jquery-2.1.4.min.js"></script> <script src="../lib/jquery.equalheights.js"></script>

Dan
15.02.2018
13:34:24
<script src="{{ STATIC_URL }}lib/jquery.equalheights.js"></script>

или через {% static %}

Denis
15.02.2018
13:34:56
{% load static %} в самом верху документа

или не поможет?

Massimo
15.02.2018
13:35:33
поможет

Google
Denis
15.02.2018
13:35:40
не помогает =(

Massimo
15.02.2018
13:35:51
подожди

{% load staticfiles %}

<script src="{% static '/home/js/main.js' %}"></script>

вот пример

STATIC_URL = '/static/'

первой прогружаешь все статичные пути

во второй указываешь конкретный путь к документы

в Static_URL указывается папка где лежит весь статик

Robot
15.02.2018
13:39:40
OlegBrony
15.02.2018
13:39:59
С установки апач mysql php
а... я тебя понял. благодарю

Denis
15.02.2018
13:41:22
в Static_URL указывается папка где лежит весь статик
странно в логе вижу, что он пытается загрузить файл

[15/Feb/2018 13:40:43] "GET /lib/jquery.equalheights.js HTTP/1.1" 200 6348

но толку нет

Massimo
15.02.2018
13:41:46
[15/Feb/2018 13:40:43] "GET /lib/jquery.equalheights.js HTTP/1.1" 200 6348
так у тебя тама не полный путь указан

Denis
15.02.2018
13:42:21
так у тебя тама не полный путь указан
а если я локально полный путь укажу ссылка ведь перестанет работать когда перенесу на хостинг

Denis
15.02.2018
13:43:57
ок, спасибо щас почитаю чтобы не тупить

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