2016-11-13 93 views
0

在我的UserProfile應用程序中我試圖添加照片上傳,在管理面板中,我可以看到照片鏈接,當我從用戶配置文件上傳它,它工作正常,但我無法顯示它在我的模板django顯示上傳的照片模板

urls.oy

if settings.DEBUG: 
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 

車型

class UserProfile(models.Model): 
     user = models.OneToOneField(User, related_name='user')  
     photo = models.FileField(null=True, blank=True) 

     def create_profile(sender, **kwargs): 
      user = kwargs["instance"] 
      if kwargs["created"]: 
       user_profile = UserProfile(user=user) 
       user_profile.save() 
     post_save.connect(create_profile, sender=User) 
在我的模板

我想這一切的組合,但沒有工作

<div> <img src="{{user.user.photo}}" alt="image example"/> 
      <img src="{{user.photo.url}}" alt="image example"/> 
      <img src="{{user.image.url}}" alt="image example"/> 
      <img src="{{instance.photo.url}}" alt="image example"/> 
      <img src="{{instance.image.url}}" alt="image example"/> 
      <img src="{{UserProfile.photo.url}}" alt="image example"/> 
      <img src="{{UserProfile.image.url}}" alt="image example"/> 



    </div> 

回答

0

在我的情況,因爲我有related_name='user',我需要照片path.url意味着

{{user.user.photo.url}} 

,但如果我沒有related_name =「用戶」的路徑將是

{{user.UserProfile.photo.url}} 
0

你確定你的文件已上傳嗎?

請檢查django的File upload documentation以確保您處理上傳的文件。

如果一切正常,您必須看到一些文件已上傳到您在設置中指定的MEDIA_URL文件夾中。

+0

是的,我從管理面板檢查圖像顯示在這個鏈接http://127.0.0.1:8000/media/1_zmH5bU4.png PS:原始照片名稱是1.png和'_zmH5bU4'是隨機產生,如果我上傳具有相同名稱的另一張照片到目錄 – LeLouch