@pydjango

Страница 31 из 1273
Vlad
28.09.2016
17:40:04
я так понял он только заголовки правильные подставляет зато сразу ко всему от апача до гуникорна

можно, но для этого надо загружать файл в озу

а это уже как-то слишком

arisu
28.09.2016
17:41:02
можно не загружать

Google
arisu
28.09.2016
17:41:08
а читать генератором

ну собсна стриминг респонс это и делает

принимает генератор на вход

а файлреспонс еще оптимизирует ответ для wsgi

Vlad
28.09.2016
17:45:17
почитаю-подумаю ещё. спасибо. в крайнем случае можно конечно сторедж просто в медиа руте сделать, или алиас ему туда добавить, но как-то это странненько немного

Marsel
28.09.2016
18:37:38
задача то в чем?

складывать файлики в общедоступный репозиторий но не палить ссылки?

не репозиторий, а бакет скорее.

Vlad
28.09.2016
18:42:32
Отдавать файлы только авторизированным пользователям и так что бы по прямой ссылке на файл пересланной например одним из авторизованных пользователей другим людям они скачать не могли

Marsel
28.09.2016
18:43:59
я делал нечто похожее на голанге и с бакетом амазона. там вроде как можно было генерить на лету временные ссылки. т.е. прямой ни у кого не было

ну а авторизацию думаю можно тоже накидать в качестве элемента ключа

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

ну и докидываешь авторизацию

Google
Vlad
28.09.2016
18:49:04
ну да, как вариант но мне всё равно кажется что заставлять апач или нгинкс как-то проще а на локалхосте через manage.py не заводится через вечные косяки с MEDIA_ROOT в урлах

Marsel
28.09.2016
18:49:50
попробуй под докером разверни боевое окружение

ну как-то честно говоря фиг знает. авторизацию должно обеспечивать приложение, а не веб-сервер. имхо. просто логически )

тем более что привязка к юзерам есть

как я понял

Vlad
28.09.2016
18:51:52
да я вывешу через день-два и уже на месте проверю, пока не горит ну так так и получается, смысл что бы веб-сервер на запрос файла отправлял в приложение

во всяком случае как я это понимаю

ultranoise ?
29.09.2016
11:52:52
Господа, а как мне сделать такой плйесхолдер, который бы обновлял текст по ajax-запросу?

Ilya
29.09.2016
11:56:29
так а самому в js поменять placeholder?

в чём проблема?

Artem
29.09.2016
11:58:06
по принятию данных с оякс запроса меняй

ultranoise ?
29.09.2016
12:03:54
господи, да ни при чем

извиняйте

Aleksey
29.09.2016
12:24:44
Кто нибудь solr thumbnail пользовался?

{% thumbnail image "100x100" crop="center" as im %} <img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}"> {% endthumbnail %}

У картинки есть поле description. Нужно сделать data-description=DESCRIPTION

Artem
29.09.2016
12:38:06
насколько помню, солр аппендит свои пропертя в словарь контекста. Поэтому можешь вставлять описаловку также {{ im.desc }}

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

V
29.09.2016
14:12:04
извините за глупый вопрос, а зачем есть две группы по джанге с примерно равным кол-вом участников? может одну в бегинерскую переделать по аналогии с питоновскими чатами?

Google
V
29.09.2016
14:12:34
первый вопрос риторический, второй - скорее к админу группы, наверное?

Vlad
29.09.2016
14:15:12
А где вторая?

Alex
29.09.2016
14:16:22
V
29.09.2016
14:18:30
https://telegram.me/django_framework

вот

правда сейчас уже совсем не одинаковое кол-во участников

amureki
29.09.2016
14:19:22
87 человек и 180 человек - примерно равные?

V
29.09.2016
14:19:24
когда я заходил в обе, было примерно поровну

Vlad
29.09.2016
14:19:24
Спасибо

V
29.09.2016
14:19:35
тогда и тут было около сотни вроде

причем около снизу если я не ошибаюсь

Eugene
29.09.2016
14:20:44
я ту группу создал для группы своей по джанго на вк

V
29.09.2016
14:20:45
но эта мне кажется более живая

Eugene
29.09.2016
14:20:53
и когда создавал тут было больше ста

V
29.09.2016
14:21:24
хм, значит я что-то напутал про количество

ну ладно, просто я страдаю, что нет нубской группы по джанго

по питону очень уютненько в бегинерах, не чмырят особо. ну т.е. зарт чмырит, но ему можно

amureki
29.09.2016
14:23:41
почему ему можно?)

V
29.09.2016
14:24:01
я знал, что кто-нибудь спросит ))

Google
V
29.09.2016
14:24:43
ну в первую очередь потому, что он как-то беззлобно чмырит, а главное всегда дает полезной информации значительно больше, чем можно было бы рассчитывать, чем компенсирует

amureki
29.09.2016
14:24:55
опыт и знания не оправдывают скверный характер

зря вы так считаете

V
29.09.2016
14:25:27
ну мне кажется он больше амплуа поддерживает, нежели на самом деле говнюк

Eugene
29.09.2016
14:26:26
а смысл тусить в группе для новичков? чему ты там научишься?

от новичков то

V
29.09.2016
14:26:54
зря вы так считаете
что именно? что он дает полезную информацию?

а смысл тусить в группе для новичков? чему ты там научишься?
смысл в том, что в такой группе обычно есть несколько реально опытных человек, которые в основном и отвечают на нубские вопросы. и раз они там сидят, они априори согласны отвечать на такие вопросы

amureki
29.09.2016
14:27:50
опыт и знания не оправдывают скверный характер
я про это, по вашему можно "чмырить" людей будучи опытнее их

V
29.09.2016
14:31:47
я терпеть не могу кряхтеть в интернетах типа "я старый и давно уже не возбуждаюсь по всякой ерунде", но подозреваю, дело именно в этом. у меня есть цель получить определенные знания, от зарта я их неоднократно получал, все остальное, что не касается достижения моей цели я просто фильтрую. считай, это цена за получение знаний. для меня это очень дешево, я ни разу еще не обиделся ))

при этом я еще более ценю и уважаю тех опытных людей, которые делятся своими знаниями с новичками без всех этих выкрутасов и прочего. но таких очень-очень мало

а смысл тусить в группе для новичков? чему ты там научишься?
еще полезным бывает, когда другой новичок задает вопрос, а ты знаешь ответ и отвечаешь. это приятно. вдвойне приятно, если кто-то опытный подтвердит, что ты ответил правильно и это хорошее решение. это доп. мотивация.

amureki
29.09.2016
14:41:45
а смысл тусить в группе для новичков? чему ты там научишься?
как правило, могут вопросы в совершенно разных областях в нашем деле все решает опыт, ты мог с таким вообще никогда не сталкиваться, а соответсвенно и не знать об этом

V
29.09.2016
14:45:19
возвращаясь все-таки к джанго, вот например, вопрос по существу. делаю в модели поле, которое ограничено с помощью choices. в доке пишут, что для этого принято использовать константы, написал вот так: PUBLIC = 0 UNPUBLISHED = 1 PRIVATE = 2 ACCESS_TYPES = ( (PUBLIC, 'Public'), (UNPUBLISHED, 'Unpublished'), (PRIVATE, 'Private') ) access_type = models.IntegerField(max_length=1, choices=ACCESS_TYPES, default=PUBLIC)

сорри, max_length зря написал

уже прочитал, что он игнорится

а вопрос в том, правильно ли использовать int для подобных вещей и какого размера int создастся в базе? в мускуле, например, для подобных вещей логично было бы использовать tinyint

amureki
29.09.2016
14:48:15
это зависит от базы, но вроде как не принято тут париться (в постгресе точно)

V
29.09.2016
14:48:59
ага, понял, я как раз постгрес пробую, до этого имел дело только с мускулем

Google
amureki
29.09.2016
14:49:42
к слову говоря, есть пакет неплохой, где есть хорошая реализация этого чоисфиелда https://django-model-utils.readthedocs.io/en/latest/utilities.html#choices

мелочь, но приятно

V
29.09.2016
14:50:35
о, спасибо, погляжу. но я пока совсем бегинер, хочу сначала как полагается своих костылей насочинять, а потом уже к чужим переходить )

говорят так лучше материал усваивается

а вот еще такой вопрос. использую generic.CreateView для создания записи. в модели есть поле create_date = models.DateTimeField('date created'), но я не хочу его вообще показывать в форме, хочу чтоб просто записалось в базу время создания. поэтому вьюху делаю такую: class AddCaseView(generic.CreateView): model = CompareCase fields = ['name', 'access_type'] initial = {'create_date': timezone.now()}

предполагая, что он запишет в поле create_date текущее время во время создания. но нет, говорит что NULL пытается туда записать, а нельзя

просто в модель default записать?

да, похоже так и надо, запись появилась с текущим временем

amureki
29.09.2016
15:26:38
https://docs.djangoproject.com/en/1.10/ref/models/fields/#datefield

V
29.09.2016
15:26:38
т.е. create_date = models.DateTimeField('date created', default=timezone.now)

amureki
29.09.2016
15:26:48
посмотрите тут аргументы

auto_now=False, auto_now_add=False

они удобны для создания created и modified полей

V
29.09.2016
15:27:22
точно! то, что надо, спасибо!

amureki
29.09.2016
15:27:33
если вам сыоя дата нужна, да, можно в дефолт записывать

V
29.09.2016
15:28:02
своя дата в смысле не текущая а какая-то другая?

amureki
29.09.2016
15:28:49
ну да, в дефолт можно метод пихнуть, который будет рассчиывать дату на основе чего-то

V
29.09.2016
15:29:28
да, супер, все ясно

спасибо

Roman
29.09.2016
16:49:08
народ, где по поцански логику работы с дб писать?

или лучше во вьюхи вынести?

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