@pydjango
Django

Полезная информация и правила: https://github.com/amureki/django_faq Вакансии и резюме: @django_jobs Пофлудить идём сюда: @django_flood Статистика чата: combot.org/chat/-1001063854692

1741 members

Архив канала @pydjango 19 декабря 2016 г.

01:46:26 ДП
User 223620233
подскажите пожалуйста, куда складывать ImageField?
В поле uploaded_to пишу путь static/images/%Y/%m/%d
потом в шаблоне достаю src="{% static object.img.image %}" (связь через FK)
но в пути к картинке static дважды прописывается : http://localhost:8000/static/static/images/2016/12/18/apple.jpg

в шаблоне без static не работает src="{% object.img.image %}", он и понятно,  тут же не` tag` а variable
поставил {{object.img.image}}, теперь робит
и в статику складывается по collectstatic, и ненадо в nginx доп конфиг писать...
01:49:47 ДП
01:50:17 ДП
User 223620233
надо утку завести, для диалогов.
01:54:04 ДП
User 146494977
User 223620233
подскажите пожалуйста, куда складывать ImageField?
В поле uploaded_to пишу путь static/images/%Y/%m/%d
потом в шаблоне достаю src="{% static object.img.image %}" (связь через FK)
но в пути к картинке static дважды прописывается : http://localhost:8000/static/static/images/2016/12/18/apple.jpg

в шаблоне без static не работает src="{% object.img.image %}", он и понятно,  тут же не` tag` а variable
поставил {{object.img.image}}, теперь робит
и в статику складывается по collectstatic, и ненадо в nginx доп конфиг писать...
https://docs.djangoproject.com/en/1.10/ref/models/fields/#django.db.models.FileField.storage
01:54:37 ДП
User 146494977
В uploaded_to пишется путь относительно MEDIA_ROOT
01:54:47 ДП
User 146494977
Видимо, поэтому он второй раз ставит static.
02:02:16 ДП
User 223620233
да, если без static писать, все работает.
но за линк на media_root спасибо!
02:04:26 ДП
User 223620233
> If you want to use {{ MEDIA_URL }} in your templates, add 'django.template.context_processors.media'
> in the 'context_processors' option of TEMPLATES.

здесь порядок следования в списке не важен? как middleware например ?
02:11:27 ДП
User 146494977
User 223620233
> If you want to use {{ MEDIA_URL }} in your templates, add 'django.template.context_processors.media'
> in the 'context_processors' option of TEMPLATES.

здесь порядок следования в списке не важен? как middleware например ?
В доках не написано,так что думаю, что не важен.
02:46:36 ДП
User 223620233
User 146494977
В доках не написано,так что думаю, что не важен.
Спасибо! настроил, работает, но ток не на дев_сервере
02:59:59 ДП
User 223620233
https://docs.djangoproject.com/en/1.9/howto/static-files/#serving-files-uploaded-by-a-user-during-development
03:00:23 ДП
User 223620233
нашел про дев сервер
03:12:29 ДП
User 146494977
User 223620233
нашел про дев сервер
Вот это про продакшн сервер, как я понял.
https://docs.djangoproject.com/en/1.9/howto/static-files/deployment/
06:17:38 ДП
User 329696282
Друзья поясните новичку, лучше сначала учится Django на python 2.7 или 3х????
06:28:19 ДП
User 234491501
Блин! Да зачем вообще так писать!?
from rest_framework.views import (
    Response,
    APIView,
)
06:35:26 ДП
User 119702721
User 234491501
Блин! Да зачем вообще так писать!?
from rest_framework.views import (
    Response,
    APIView,
)
Почему бы и нет?
06:36:09 ДП
User 234491501
Чем from rest_framework import Response, APIView не устраивает?
06:37:34 ДП
User 48374918
User 234491501
Чем from rest_framework import Response, APIView не устраивает?
при большом количестве импортируемых модулей так удобнее читать
06:37:49 ДП
User 234491501
Здесь большое количество?
06:38:06 ДП
User 234491501
Я понимаю если за 80+ символов — Абсолютно ОК!
06:38:53 ДП
User 119702721
Видимо, кто-то посчитал, что больше одного импорта это уже много.
06:39:10 ДП
User 119702721
И разбил на строки.
06:39:27 ДП
User 234491501
А в чем смысл? Я просто пытаюсь понять.
06:39:59 ДП
User 234491501
Или например:
('hello',
 'world')

вместо
('hello', 'world')
06:42:02 ДП
User 119702721
Автору показалось, что читабельнее будет, если не больше одного элемента в строке.
06:52:28 ДП
User 202293496
Друзья, ну помогите! немогу одну таблицу связать с другой. Мне надо экспортировать базу из дьянги. в одной таблице краткий заголовок и поле slug. в другой поле cms_plugin_ptr_id и body с содержанием страницы. Как мне их связать чтобы получилась одна база. Как разворачивается slug в cms_plugin_ptr_id? в дьянго я ноль.
07:06:54 ДП
User 100243492
Дьянго? Что-то новое)
07:26:14 ДП
User 329696282
Друзья создайте голосование джанга 2.7 или 3х
07:29:16 ДП
User 119702721
О. Чувак из 2030.
07:31:50 ДП
User 202293496
именно дьянга 1.3.7 - динозаур
09:13:32 ДП
User 41866402
кто подскажет в чем проблема?
если убрать update_fields  , то все работает, но тогда в бд записываются все поля даже которых нет в форме (хотелось бы апдейтить только нужные мне поля, а не переписывать весь ряд), а с update_fields  дает save() got an unexpected keyword argument 'update_fields'
09:13:50 ДП
09:13:50 ДП
09:33:40 ДП
User 261260366
https://docs.djangoproject.com/en/1.10/topics/forms/modelforms/#the-save-method
09:41:59 ДП
User 41866402
UPDATE "main_userprofile" SET "user_id" = 1, "activation_key" = '', "middle_name" = 'blabla blabla', "country" = NULL, "website" = '', "phone" = '' WHERE "main_userprofile"."id" = 32
09:42:18 ДП
User 41866402
если с commit=false также
09:42:45 ДП
User 41866402
так-то все работает, но мне надо обновить всего одно поле
09:43:22 ДП
User 41866402
а в дебагере показывает, что переписывается весь ряд
09:47:30 ДП
User 107485588
User 41866402
а в дебагере показывает, что переписывается весь ряд
Там вроде апдейт метод должен быть
09:50:08 ДП
User 261260366
я сомневаюсь, использует ли сама форма update_fields киворд. Зацени тут, вдруг поможет. Только все ответы. http://stackoverflow.com/questions/1355150/django-when-saving-how-can-you-check-if-a-field-has-changed
stackoverflow.com/questions/1355150/django-when-saving-how-can-you-check-if-a-field-has-changed
In my model I have : class Alias(MyBaseModel): remote_image = models.URLField(max_length=500, null=True, help_text="A URL that is downloaded and cached for the image. Only used when the alias...
09:55:23 ДП
User 41866402
да, в принципе можно и проверять изменилось ли поле как здесь
10:01:59 ДП
User 261260366
по сути, если это апдейт, то нужно зафетчить объект, заклинить форму, засейвить с commit=False, а уже у этого объекта можно вызвать Model.save(update_fields=['blah', 'blah2', 'blah3'])
10:09:21 ДП
User 41866402
спасибо, вот так все заработало
10:09:21 ДП
10:09:54 ДП
User 41866402
но все SET на все поля
10:09:55 ДП
10:10:03 ДП
User 41866402
возможно это особенность бд
10:10:59 ДП
User 41866402
или psycopg2
10:34:41 ДП
User 82569033
Гайс, я могу в js заюзать {% url 'view' value %} ?
10:38:25 ДП
User 71949287
если в шаблоне, то да
10:39:07 ДП
User 181296022
$.ajax({
        url : "{% url 'add_to_favorite' %}",
10:39:29 ДП
User 82569033
Так, а если выносить это все в отдельный js, то как работать с этим?
11:03:19 ДП
User 48374918
User 82569033
Так, а если выносить это все в отдельный js, то как работать с этим?
в темплейте определять как глобальную переменную 
<script>
        var addFavoritetUrl = '{% url 'add_to_favorite' %}';
    </script>
и в js уже использовать переменную
$.ajax({
        url : addFavoritetUrl,
11:14:03 ДП
User 82569033
спасибо
11:56:00 ДП
User 218876148
Нубовопросы инкамин. Есть в джанготестах возможность проверить порядок, в котором элементы выводятся на страницу?
12:00:05 ПП
User 82569033
Гайс, у меня есть список объектов, который я заворачиваю в json и отдаю при аякс запросе.
thread_test = Thread.objects.filter(board=Board.objects.get(board_shortcut=name_board)).order_by('-thread_score')
data = serializers.serialize('json', thread_test)
 return HttpResponse(data, content_type='application/json')
Вот мой аякс
var count_comment = 5;
    if ($('.container_board_index').length >= 5) {
        $(window).scroll(function () {
            if($(window).scrollTop() + $(window).height() == $(document).height()) {
                $.ajax({
                    type: 'GET',
                    dataType: 'json',
                    data: {'value': count_comment},
                    success: function (data) {
                        count_comment += 5;
                    }
                })
            }
        })
    }
Я не понимаю как мне теперь отобразить эти объекты на страницы. Точнее как работать с json data. К каким полям обращаться, чтобы вытащить нужные мне данные. Вот такого вида json имею
[{"model": "boards.thread", "pk": 11, "fields": {"board": 1, "thread_tittle": "\u0416\u0438\u0437\u043d\u044c \u043a\u0430\u0435\u0444(\u043d\u0435\u0442)", "thread_text": "\u041f\u0440\u0443\u0444", "thread_image": "", "thread_time": "2016-11-30T18:09:58.372Z", "thread_score": 0}},
12:01:13 ПП
User 100243492
выкарчевываеь поле fields, и отображаешь данные, как тебе надо
12:03:56 ПП
User 218876148
Сделай console.log(data) в своем колбеке, он тебе выведет эти данные так, как js их видит, там и поймешь как к ним обращаться - как к массиву или объекту
12:06:10 ПП
User 82569033
ну я через alert игрался, вроде как массив объектов. Щас вроде даже поля удалось выцепить. Осталось покупекать только над правильным выводом
12:08:39 ПП
User 261260366
console.log(data) хотя бы тебе норм json выплюнет, на который можно посмотреть. зачем алерты.
12:08:59 ПП
01:31:05 ПП
User 234491501
Кто такие миксины? 😊
01:32:00 ПП
User 234491501
Это чтоб миксовать вью? Например class HelloAPIView(ListAPIView, CreateModelMixin):?
01:32:39 ПП
User 100243492
User 234491501
Это чтоб миксовать вью? Например class HelloAPIView(ListAPIView, CreateModelMixin):?
Ага,  миксы миксовать :)
01:33:12 ПП
User 234491501
Миксины чтоб миксы миксовать – замиксовочно! \m/
03:04:08 ПП
User 88111010
ребята, как сделать автоинкремент для модели?
appointment_id = models.IntegerField('Appointment ID', ????)
03:10:26 ПП
User 100243492
def save(self, *args, **kwargs):
     self.appointment_id += 1
     super(...).save(*args, **kwargs)
03:19:17 ПП
User 107485588
User 100243492
def save(self, *args, **kwargs):
     self.appointment_id += 1
     super(...).save(*args, **kwargs)
это ж не автоинкремент
03:19:37 ПП
User 107485588
User 88111010
ребята, как сделать автоинкремент для модели?
appointment_id = models.IntegerField('Appointment ID', ????)
из коробки только через primary_key=True
03:19:59 ПП
User 100243492
User 107485588
из коробки только через primary_key=True
оно заменяет  id
03:20:10 ПП
User 107485588
естественно
06:36:23 ПП
User 111662298
Ребят, что может означать ошибка Empty static prefix not permitted?
06:36:35 ПП
User 111662298
Первый раз с ней сталкиваюсь. Где искать в первую очередь?
06:40:56 ПП
User 111662298
ImproperlyConfigured at /
06:42:00 ПП
06:42:05 ПП
User 378433
то и может означать
06:42:09 ПП
User 378433
что тут не ясно?
06:59:50 ПП
User 111662298
Здесь все ясно. Неясно другое. Вот у меня такой код в темплейте:
{% if tech_stuff.main.image != None %} <img src="Здесь картинка которая нормально отображается если она есть">
{% else %}
{% endif %}
07:00:09 ПП
User 111662298
Вот там где else если картинка отсутствует он крашится почему-то
07:06:44 ПП
User 261260366
убери елс
07:07:57 ПП
User 261260366
и на None попробуй писать: {% if tech_stuff.main.image %}{% endif %}
07:09:25 ПП
User 111662298
Такая же фигня
07:10:14 ПП
07:10:18 ПП
User 111662298
Сработало
07:10:23 ПП
User 111662298
User 261260366
и на None попробуй писать: {% if tech_stuff.main.image %}{% endif %}
Спасибочки!
07:10:33 ПП
User 261260366
будь здоров
07:10:39 ПП
User 111662298
Видать ругался на != None