我在 tutorial 项目中有两个应用程序 accounts 和 home 。 用户可以在 home应用中创建帖子,并且我可以在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 应用,但不适用于帐户应用 看到查看源页面时,我在帐户应用程序(search.html)中获得了完美的URL,但是图像未正确加载screenshot
项目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