2014-03-19 93 views
1

我已經使我網站上的用戶可以上傳帖子,並查看來自其他用戶的所有其他帖子。下面的代碼附加了編寫帖子userpicture的用戶。使用戶圖片成爲鏈接

我希望它成爲該用戶的鏈接。我的問題是,下面的代碼鏈接到當前用戶,而不是創建帖子的用戶。

任何人有一些想法如何解決這個問題?謝謝!

{% if item.sender.userpicture_set.all %} 
     {% for item in item.sender.userpicture_set.all %} 
      {% if item.active %} 
       {% if forloop.first %} 
        {% if forloop.last %} 
         <a href='/members/{{ user.username }}'><img src='{{ MEDIA_URL }}{{ item.image }}' class='img-responsive' id='post-userpicture'/></a> 
        {% endif %} 
       {% endif %} 
      {% endif %} 
     {% endfor %} 
      <small><a href='/members/{{ user.username }}'>{{ item.sender }}</a><span style='color: grey;'> {{ item.sent }}</span></small> 
{% endif %} 
+0

在您的模型中,如果您已將用戶的外鍵字段添加到帖子(上載的)模型中,則可以使用上下文在視圖中檢索用戶。你可能需要你的模型和視圖來幫助你更多。 – abrunet

回答

0

在你item模型中,添加一個字段username,它存儲了username of the user who made this post

在此,它創建一個指向當前用戶的鏈接,因爲「用戶」沒有任何關於帖子的信息。它有關於當前用戶的信息。

添加 '用戶名' 字段後,

{% if item.sender.userpicture_set.all %} 
     {% for item in item.sender.userpicture_set.all %} 
      {% if item.active %} 
       {% if forloop.first %} 
        {% if forloop.last %} 
          <a href='/members/{{ item.sender.username }}'><img src='{{ MEDIA_URL }}{{ item.image }}' class='img-responsive' id='post-userpicture'/></a> 
        {% endif %} 
       {% endif %} 
      {% endif %} 
     {% endfor %} 
      <small><a href='/members/{{ item.sender.username }}'>{{ item.sender }}</a><span style='color: grey;'> {{ item.sent }}</span></small> 
{% endif %} 

UPDATE:

我不得不改變item.sender.username。這應該工作。

+0

這是我的發帖模型: class Posts(models.Model): post = models.CharField(max_length = 3000) sender = models.ForeignKey(User,related_name ='sent_the_post',null = True,blank = True) sent = models.DateTimeField(auto_now_add = False,auto_now = False,null = True,blank = True) read = models.DateTimeField(auto_now_add = False,auto_now = False,null = True,blank = True) timestamp = models .DateTimeField(auto_now = False,auto_now_add = True) 您將如何創建該字段用戶名,該字段用於存儲上述內容? – Christo

+0

上面有點雜亂,但有郵件,發件人,發送,閱讀和時間戳。 – Christo

+0

我做了更改。請檢查。 –

0

的問題是,您要引用您的鏈接user對象<a href='/members/{{ user.username }}'>,正確的URL應該像<a href='/members/{{ item.sender.username }}'>但它需要你有一個ForeignKey參考的項目模型的用戶。

+0

我有一個外鍵:sender = models.ForeignKey(User,related_name ='sent_the_post',null = True,blank = True) - 我試過了: 但它不起作用:( – Christo