1
我试图在我的白板内部实现评论功能。该功能允许学生对彼此的图片进行评论。Django复制对象
我有一个应用程序,学生可以创建虚拟白板并在白板内张贴与作业相关的图片。
当用户单击以查看特定图片下的评论时。该评论确实出现在该特定图片上,但所有图片上都出现相同的评论,这也不是假设。
我一直在想办法实现评论功能,这是我唯一的想法。 我怎么能解决这个重复的问题,因为我的“M一直在试图想出一个办法来的图片与注释关联。
看看白板>
http://imageshack.us/photo/my-images/836/90792660.jpg/
我的白板。 HTML
{% if picture %}
<ul>
{% for pet in picture %}
{% if pet.image %}
<a href ="{% url world:LikePicture pet.id %}"><br>
<img src= "{{ pet.image.url }}" style="cursor:pointer"></a>
<br>
</a>
</li>
{% endif %}
<br>
<a href="{% url world:CommentCreator pet.id %}">View Comment</a><br/>
{% for c in comment %}
<br>{{ c.body }}</li>
<br>{{ c.created}}</li>
<br>{{ c.user}}</li>
{% endfor %}
{% endfor %}
</ul>
{% endif %}
我views.py
def Boat(request ,animal_id):
if not request.user.is_authenticated():
return HttpResponseRedirect(reverse('world:LoginRequest'))
picture = Picture.objects.filter(whiteboard=animal_id)
return render(request,'whiteboard.html',{'picture':picture})
def CommentCreator(request,picture_id):
p = Picture.objects.get(pk=picture_id)
comment = Comment.objects.filter(picture=p)
Whiteboard = WhiteBoard.objects.get(whiteboard=p)
the_id = board.id
picture = Picture.objects.filter(whiteboard=the_id)
return render(request,'whiteboard.html',{'picture':picture,'comment':comment})
我的models.py
class WhiteBoard(models.Model):
user = models.ForeignKey(User)
name = models.CharField(max_length=100)
picture = models.OneToOneField('Picture',related_name='picture',blank=True,null=True)
def __unicode__(self):
return self.name
class Picture(models.Model):
user = models.ForeignKey(User)
Whiteboard = models.ForeignKey(WhiteBoard,blank=False,null=False,related_name='board')
image = models.FileField(upload_to="images/",blank=True)
description = models.TextField()
is_primary = models.BooleanField(default=False)
def __unicode__(self):
return self.description
class Comment(models.Model):
created = models.DateTimeField(auto_now_add=True)
user = models.ForeignKey(User)
body = models.TextField()
picture = models.ForeignKey(Picture)
它完美地工作,谢谢。如果我想关闭评论。喜欢再次点击它隐藏。我会怎么做? – lilbear22 2013-03-22 05:27:53
你最好应用jscript的 – catherine 2013-03-22 05:28:54
最好是如果你问另一个问题:) – catherine 2013-03-22 05:30:02