Как загрузить медиа из другого приложения Django - PullRequest
0 голосов
/ 12 сентября 2018

У меня есть два приложения учетные записи и home в учебнике проекта.Пользователь может создать сообщение в домашнем приложении , а я могу отобразить сообщение (т.е. изображения и данные сообщения) в домашнем приложении.В приложении учетных записей я хочу создать страницу поиска, где не авторизованный пользователь может искать и просматривать сообщения.

settings.py

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'tutorial/media/')

search.html

{% load static %}
 {% if re %}
    {% for q in re %}
    <a href="{% url 'home:Post_detail' pk=q.id %}">{{q.id}}.{{ q.post }}
        <br>
        <img src="{{ q.image.url}}"  width="240" height="auto">
        <p>Posted by {{ q.user.get_full_name }} on {{ q.created }}</p>

    {%endfor%}
    {% endif %}

Я использую приведенный выше код в домашнем приложении и приложении для учетных записей .Это прекрасно работает для home приложения, но не для приложения учетных записей , когда я вижу исходную страницу просмотра, я получаю идеальный URL в приложении учетных записей (search.html) , ноизображения загружаются неправильно снимок экрана

project urls.py

    from django.conf import settings
    from django.conf.urls.static import static
    urlpatterns = [
    path('accounts/', include('accounts.urls' , namespace='accounts') ),
    path('home/', include('home.urls' , namespace='home') ),
    path('admin/', admin.site.urls),
    path('',login_redirect , name = 'login_redirect'),
    ]
    if settings.DEBUG is True:
        urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

структура учебного проекта

tutorial
    |_accounts
    |_home
    |_tutorial
       |_media
          |_profile_images
             |_all image files
...