@pydjango

Страница 864 из 1273
Google
Очень добрый
20.01.2018
15:57:16
или что

Maxos
20.01.2018
15:57:29
нет, сейчас объясню

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

Очень добрый
20.01.2018
16:00:31
речь о джанге? или о клиентской машине?

Maxos
20.01.2018
16:01:10
django

Очень добрый
20.01.2018
16:02:35
если рассуждат ь логически, то у вас есть группы - Админ, модер, пользователь - к примеру. если вам нужно, чтоб файлы загружаемые разными польователями, загружались в разные папки, то я бы явно указал адреса этих отдельных папок в модельках юзеров

Senpos
20.01.2018
16:02:49
пользователь загружает файлы, мне нужно сохранять их не в одну общую, а в разные( пользовательские, грубо говоря)
По какому принципу файлы должны заливаться? У поля FileField и ImageField есть возможность описать путь сохранения через аргумент upload_to.

Очень добрый
20.01.2018
16:02:52
и дальше хоть get_absolute_url , хоть как

только на каждого пользователя нужна своя моделька со своим путем

Senpos
20.01.2018
16:05:17
В общем, пока не до конца ясно как именно надо сохранять файлы, но вот пример: https://github.com/kennethlove/django_bookmarks/blob/master/dj_bookmarks/profiles/models.py#L6

Maxos
20.01.2018
16:05:50
о

Google
Maxos
20.01.2018
16:06:02
то что нужно, судя по всему

Senpos
20.01.2018
16:06:11
Файлы сохраняются не в одну общую папку media/, а в media/avatars/user_{user_id}/{filename}

Maxos
20.01.2018
16:06:21
большое спасибо

кстати, из-за чего у вас тут спор разгорелся?

Senpos
20.01.2018
16:07:25
Вот еще пример из документации, где файлы загружаются в подпапках в зависимости от текущего года / месяца / дня https://docs.djangoproject.com/en/2.0/ref/models/fields/#django.db.models.FileField.upload_to

Очень добрый
20.01.2018
16:18:23
большое спасибо
но есть одна проблема

если в поле ImageFiel

Maxos
20.01.2018
16:19:51
так

а это уже интереснее

Очень добрый
20.01.2018
16:20:38
Если в поле ImageField будет переменная в виде ника пользователя и при этом, разрешить пользователям регистрировать в нике кириллицу и пробелы - могут быть проблемы с роутингом при get_absolute_url

будет выдавать 404

и тут же решение проблемы

в upload_to привязываем не username , а создаем еще одно поле в модели юзера Slug = SlugField

и указываем его в upload_to

Очень добрый
20.01.2018
16:40:38
либо, как вариант не использовать слаг а id или pk пользователя

опять таки, айдишник не очень гибкая штука

Очень добрый
20.01.2018
16:43:33
Читоооо?!
если так получится, что база рухнет а на фтп будут лежат ьвсе файлы привязанные не к slug, которая напрямую зависит от заданного ника а от id, который зависит лишь от очередности регистрации пользователей, то при использовании слагов бд можно будет почти безболезненно бекапнуть и слаги привязанные к пользователям благополучно отработают (скорей всего)

а айдишники не факт

Google
Очень добрый
20.01.2018
16:44:23
1 человек зашел не по своей очереди в плане айди, и всё. вся цепочка прогорела

даже не знаю что то

Artem
20.01.2018
16:44:45
А твои проблемы - не умение варить

Очень добрый
20.01.2018
16:45:04
проблем нет

Sergey
20.01.2018
16:47:07
подскажите как обычно контент для статей держат в бд ? имею ввиду что идёт абзац, а там картинка/видео/ссылки и тд

Очень добрый
20.01.2018
16:48:16
textfield, а для красивости статьи - markdown

Sergey
20.01.2018
16:48:17
TextField, а там внутри что хочешь
прям с тегами уже все внутрь херачить?

Очень добрый
20.01.2018
16:48:38
теги отдельным полем

Bob
20.01.2018
16:48:38
Очень добрый
20.01.2018
16:49:11
тогда какой смысл тегов, если они будут в одном поле со статьем

они же будут неюзабельные

Sergey
20.01.2018
16:49:53
тогда какой смысл тегов, если они будут в одном поле со статьем
вот я к этому и веду, как в отдельное поле засунуть а потом все связать воедино

Bob
20.01.2018
16:49:54
они же будут неюзабельные
Мы об одном говорим? Человек хочет контент в базу положить, а вы о чем?

Делаем модель, типа: class Article ... title = models.CharField ... meta_title ... meta_keywords ... ... и т.д. content = models.TextField

Очень добрый
20.01.2018
16:51:20
Мы об одном говорим? Человек хочет контент в базу положить, а вы о чем?
контент ложится одной строкой в одно поле, а красивости статьи за счет библиотеки markdown теги прописываются в отдельном поле одной и той же модели через библиотеку taggit

Bob
20.01.2018
16:51:44
Далее в content ложим тело статьи в любом нужном нам формате

И прикручиваем редактор сверху, в той же админке

Google
Очень добрый
20.01.2018
16:52:59
я вас тоже

Bob
20.01.2018
16:53:23
Тогда приведите пример вашей модели :)

Давайте я пример приведу: <h1>Рецепт очень вкусного салата</h1> <p>Автор: тов. Рецептов А.Я.</p> <h2>Ингридиенты</h2> <p>Бла бла бла бла ...</p> <ul><li>Список</li></ul> (тут картинка) и т.д.

Очень добрый
20.01.2018
16:57:35
Bob
20.01.2018
16:57:39
Все что с h2 - контент, как вы это в базу положите? @alljewsofisrael

Admin
ERROR: S client not available

Очень добрый
20.01.2018
16:57:55
а марк2 уже как вы описали выше

Bob
20.01.2018
16:58:43
from django.db import models from taggit.managers import TaggableManager class Content(models.Model): name = models.TextField img = models.ImageField url = models.UrlField tags = tags = TaggableManager() def get_absolute.... class meta ....

Очень добрый
20.01.2018
16:58:56
марк2 выводит h2 и остальные в на выходе, а в бд строка помещается с символами **** и прочие

Senpos
20.01.2018
16:59:00
А как поступить, если нужно на сайте отдавать маркдаун, а через апи - текст без тегов?

Bob
20.01.2018
16:59:04
А если картинок 10?

Senpos
20.01.2018
16:59:26
А если картинок 10?
Без разницы сколько. Картинки там ссылками хранятся.

Bob
20.01.2018
16:59:40
А как поступить, если нужно на сайте отдавать маркдаун, а через апи - текст без тегов?
Нужно взять батарейку, которая будет автоматом отдвать HTML

Senpos
20.01.2018
16:59:43
Картинки лежат в хранилище

Bob
20.01.2018
17:00:13
А знаете, у вас крутой подход, продолжайте ?

Google
Senpos
20.01.2018
17:00:44
Видел, что делают два поля в базе.

Чистое и с форматированием.

Но как-то хз

Очень добрый
20.01.2018
17:01:19
если у вас на выходе JSON с тегами маркдауна, то нужно пропарсить

Bob
20.01.2018
17:01:58
Зачем HTML? Чисто текст нужен.
Вы браузеру тоже текст будете показывать?

https://github.com/jamesturk/django-markupfield

Как вариант

Очень добрый
20.01.2018
17:02:41
я бы не стал

Bob
20.01.2018
17:03:03
Почему?

Очень добрый
20.01.2018
17:03:18
личная неприязнь к таким батарейкам

Bob
20.01.2018
17:03:42
А, ясно, велосипедист детектед ?

Без обид, ни чего личного ?

Покажите requirements самого любимого вашего проекта?

Хочу понять ваш уровень неприязни к батарейкам ?

Очень добрый
20.01.2018
17:05:39
Requires Django >= 1.11

начнем с этого

некоторые файлы не открывались 4 года

Сергей
20.01.2018
17:05:57
https://github.com/jamesturk/django-markupfield
не совсем понятно, а для каких целей батарейка? реальный пример?

Очень добрый
20.01.2018
17:06:00
такое себе решение

Evil
20.01.2018
17:06:47
так так так

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