I have a model like this in Django:
class File(models.Model): users = models.ForeignKey(User) file_name = models.CharField(max_length=100) type = models.CharField(max_length=10) source = models.CharField(max_length=100) start_date = models.TextField() end_date = models.TextField() duration = models.TextField() size = models.TextField() flag = models.TextField()
I am trying to extract a file shared by a registered user. I just request to Share
file_s = Share.objects.filter(users_id=log_id)
This retrieves the file shared by the registered user. Since now I know which file is shared with registered users. I tried to get file information from the file table:
shared_file = File.objects.filter(users_id=file_s)
But this is returning:
DatabaseError at /shared_by_me/ (1242, 'Subquery returns more than 1 row') #my_views def shared_by_me(request): log_id = request.user.id username = request.user.username #shared_file = File.objects.filter(users_id=file) file_s = Share.objects.filter(users_id=log_id) shared_file = File.objects.filter(users_id=file_s) #b = Share.objects.filter(users_id=log_id) return render_to_response('shared_by_me.html', {'shared_by_me':shared_file, 'username':username}, context_instance=RequestContext(request)) #my_template {% for choice in shared_by_me %} <tr class="oddclass"> <td><input type="checkbox" name="choice" id="choice{{ forloop.counter }}" value="{{ choice.id }}" /></td> <td><label for="choice{{ forloop.counter }}">{{ choice.file_name }}</label></td> <td>{{ choice.type }}</td> <td>{{ i.size }}</td> <td>{{ i.end_date }}</td> </tr> {% endfor %}
What am I doing wrong?
source share