Buenas tardes a todos.
Estoy realizando el proyecto final de carrera en Python y Django y me ha surgido un problema para mostrar la información que contiene el campo ManyToMany.
El problema es el siguiente, quiero mostrar el nombre de una carpeta que ha compartido un usuario con otro, Django me muestra todas las carpetas compartidas que tiene un usuario con otro pero no me muestra el nombre de la carpeta.
Aquí os dejo el código para que comprobéis haber que es lo que hago mal, porque he mirado en la doc de Django y no he podido encontrar la solución.
models.py
Código Python:
Ver originalclass Carpetas(models.Model):
idCarpeta = models.AutoField(primary_key=True)
Nombre = models.CharField(max_length=45)
Usuario= models.ForeignKey(User)
Padre = models.IntegerField(null=True)
def __unicode__(self):
return self.Nombre
class Comparten(models.Model):
idUsuari1 = models.IntegerField()
idUsuari2 = models.ManyToManyField(User,related_name='receptor')
idCarpeta = models.ManyToManyField(Carpetes,related_name='carpeta')
lectura = models.BooleanField()
escriptura = models.BooleanField()
views.py
Código Python:
Ver originaldef usuari(request):
compartit=None
usuario = User.objects.get(username=request.user.username)
carpeta_usu= Carpetes.objects.get(Usuari=usuario.id, Nombre = usuario.username)
carpetas = Carpetas.objects.filter(Usuari=usuari.id, Padre = carpeta_usu.idCarpeta)
#Obtenemos las carpetas compartidas
compartidas = Comparten.objects.filter(idUsuari2 = usuari.id)
archivos = Archivos.objects.filter(Carpeta = carpeta_usu.idCarpeta)
return render_to_response('usuario.html', {'carpetas' : carpetas, 'id_carpeta': carpeta_usu.idCarpeta, 'archivos' : archivos, 'compartidas' : compartidas}, context_instance=RequestContext(request))
usuario.html
Os muestro la parte donde se tiene que mostrar el nombre de la carpeta
Código Python:
Ver original{% for compartida in compartidas %}
<tr>
<td>
<img src="{{ STATIC_URL }}img/folder_page.png"><a href='/carpeta/{{compartida.idCarpeta}}'>{{ compartida.idCarpeta.carpetas.nombre }}</a>
</td>
<td align="center">
{% if compartida.lectura %}
<img src="{{ STATIC_URL }}img/book_open.png">
{% endif %}
{% if compartida.escriptura %}
<img src="{{ STATIC_URL }}img/edit.png">
{% endif%}
</td>
</tr>
{% endfor %}