Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 20, 2018 05:16:00

dbalor
Зарегистрирован: 2018-07-02
Сообщения: 73
Репутация: +  0  -
Профиль   Отправить e-mail  

django и изображения

Здравствуйте,

На локальном компе линукс.

Картинки хранятся в базе к примеру : /media/img.jpg

При выводе в шаблоне картинки не отображаются.
В шаблоне при выводе создается тэги изображений:
<img src='/media/img.jpg' width='220' height='220' />

Как в django на локальном компе отображать картинки?

Структура приложения:
media #здесь находятся загруженные картинки
rest
node
node/templates/node.html #здесь выводим картинки

Отредактировано dbalor (Сен. 20, 2018 08:08:30)

Офлайн

#2 Сен. 20, 2018 09:51:07

Papa_Svin
Зарегистрирован: 2018-09-17
Сообщения: 138
Репутация: +  1  -
Профиль   Отправить e-mail  

django и изображения

dbalor
Картинки хранятся в базе к примеру : /media/img.jpg
И вот это прям картинка? Можно скопировать, вставить в файл с расширением *.jpg и будет картинка?

Отредактировано Papa_Svin (Сен. 20, 2018 10:09:40)

Офлайн

#3 Сен. 21, 2018 02:59:57

dbalor
Зарегистрирован: 2018-07-02
Сообщения: 73
Репутация: +  0  -
Профиль   Отправить e-mail  

django и изображения

Papa_Svin
И вот это прям картинка? Можно скопировать, вставить в файл с расширением *.jpg и будет картинка?

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

При выводе шаблона путь берется из базы и вставляется в тэг img:

<img src=“{{ case.photo }}” width='220' height='220' />

Офлайн

#4 Сен. 21, 2018 07:19:00

Papa_Svin
Зарегистрирован: 2018-09-17
Сообщения: 138
Репутация: +  1  -
Профиль   Отправить e-mail  

django и изображения

dbalor
а в базе хранится путь к картинке.
Да я это знаю , а вот вы знаете или нет - непонятно, если пишите так как пишите.

https://docs.djangoproject.com/en/2.1/howto/static-files/#serving-files-uploaded-by-a-user-during-development

Офлайн

#5 Сен. 24, 2018 13:12:27

dbalor
Зарегистрирован: 2018-07-02
Сообщения: 73
Репутация: +  0  -
Профиль   Отправить e-mail  

django и изображения

Papa_Svin
Да я это знаю , а вот вы знаете или нет - непонятно, если пишите так как пишите.

Да знаю я просто пишу конечный результат когда загружается страница

вот как я делаю:
               <img src="{{ t.photo }}" width="200" height="200" alt="{{ t.tname }}"/>

Отредактировано dbalor (Сен. 24, 2018 13:13:42)

Офлайн

#6 Сен. 25, 2018 07:09:00

Papa_Svin
Зарегистрирован: 2018-09-17
Сообщения: 138
Репутация: +  1  -
Профиль   Отправить e-mail  

django и изображения

dbalor
Если ссылка в теге правильная, но браузер получает 404 вместо изображения, это означает лишь то, что никакой сервер не обрабатывает запросы на этот адрес. Есть у вас media в urlpatterns?

Офлайн

#7 Сен. 25, 2018 12:08:19

dbalor
Зарегистрирован: 2018-07-02
Сообщения: 73
Репутация: +  0  -
Профиль   Отправить e-mail  

django и изображения

Да есть:

settings.py:

 MEDIA_URL = '/media/'
MEDIAFILES_DIRS=(
   os.path.join(BASE_DIR, 'media'),
)

в url.py
 from django.conf import settings
from django.conf.urls.static import static
...
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

Офлайн

#8 Сен. 25, 2018 13:18:26

Papa_Svin
Зарегистрирован: 2018-09-17
Сообщения: 138
Репутация: +  1  -
Профиль   Отправить e-mail  

django и изображения

Хм…..
Что показывает браузер, если в строке адреса набрать?

 http://localhost:8000/media/img.jpg

Офлайн

#9 Сен. 26, 2018 01:56:27

dbalor
Зарегистрирован: 2018-07-02
Сообщения: 73
Репутация: +  0  -
Профиль   Отправить e-mail  

django и изображения

Ошибка 404

 Page not found (404)
Request Method: 	GET
Request URL: 	http://127.0.0.1:8000/media/img.jpg
Raised by: 	django.views.static.serve
"/home/mirkul/djprj/resp/img.jpg" 
не существует

почему-то /media/ в пути пропускается

Отредактировано dbalor (Сен. 26, 2018 01:59:59)

Офлайн

#10 Сен. 26, 2018 06:55:52

Papa_Svin
Зарегистрирован: 2018-09-17
Сообщения: 138
Репутация: +  1  -
Профиль   Отправить e-mail  

django и изображения

А что у вас в settings.MEDIA_ROOT?

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version