2009-07-25 24 views
44

no puedo encontrar en cualquier lugar, por lo que su ayuda será agradable para mí :) aquí es que el campo:cómo agregar datos en ManyToManyField?

categories = models.ManyToManyField(fragmentCategory) 

FragmentCategory:

class fragmentCategory(models.Model): 

     CATEGORY_CHOICES = (
         ('val1', 'value1'), 
         ('val2', 'value2'), 
         ('val3', 'value3'), 
         ) 

     name = models.CharField(max_length=20, choices=CATEGORY_CHOICES) 

Aquí está el formulario para enviar:

<input type="checkbox" name="val1" /> 
<input type="checkbox" name="val2" /> 
<input type="checkbox" name="val3" /> 

que hemos probado algo como esto:

categories = fragmentCategory.objects.get(id=1), 

O:

categories = [1,2] 

Respuesta

80

Hay toda una página de la documentación de Django devoted to this, buen índice de la página de contenidos.

Como que los estados de página, que tiene que hacer:

my_obj.categories.add(fragmentCategory.objects.get(id=1)) 

o

my_obj.categories.create(name='val1') 
+5

No A continuación, deberá llamar 'my_obj.save()' para guardar la actualización o se hace esto de forma automática ? – CpILL

+2

@CpILL Parece que se hará automáticamente. Pruébelo en 'python manage.py shell'. – Rikki

Cuestiones relacionadas