J'ai une application en classe, et une relation de suivi. Les utilisateurs peuvent se suivre et créer des salles de classe. Lorsqu'un utilisateur crée une salle de classe, il peut inviter uniquement les personnes qui le suivent. Le modèle Classroom est une table m2m to User.Django m2m apparaissant champs
J'ai dans les modèles. py:
et models.py de l'application suivante:
class Relations(models.Model):
initiated_by = models.ForeignKey(User, editable=False)
date_initiated = models.DateTimeField(auto_now=True, editable = False)
follow = models.ForeignKey(User, editable = False, related_name = "follow")
date_follow = models.DateTimeField(auto_now=True, editable = False)
et views.py de l'application de la classe:
def save_classroom(request, username):
if request.method == 'POST':
u = User.objects.get(username=username)
form = ClassroomForm(request.POST, request.FILES)
if form.is_valid():
new_obj = form.save(commit=False)
new_obj.creator = request.user
r = Relations.objects.filter(initiated_by = request.user)
# new_obj.members =
new_obj.save()
return HttpResponseRedirect('.')
else:
form = ClassroomForm()
return render_to_response('classroom/classroom_form.html', {
'form': form,
},
context_instance=RequestContext(request))
J'utilise un ModelForm pour le formulaire de classe, et la vue par défaut, en tenant compte de ma relation many to many avec la table User, dans le champ Members, est une liste de tous les utilisateurs de ma base de données. Mais je veux seulement dans cette liste les utilisateurs qui sont dans une relation de suivi avec l'utilisateur connecté - celui qui crée la salle de classe. Comment puis-je faire cela?
p.s: aussi, quand je suis sauver la forme, il sauve, mais sans "membres"
Merci!
où vous voulez cette liste, dans l'admin django? ou dans un gabarit? – eos87
dans le modèle :) – dana