cómo utilizar ForeignKeyRawIdWidget
Pregunta
Quiero extender ForeignKeyRawIdWidget así que quiero ser capaz de utilizarlo sin establecer raw_id_fields.
Con la follwoing no consigo un error pero no veo ningún efecto:
# models.py
class Product(models.Model):
...
class GroupProduct(Product):
...
products = models.ManyToManyField(Product, related_name="%(class)s_related")
# forms.py
class GroupProductAdminForm(forms.ModelForm):
class Meta:
model = GroupProduct
widgets = {
'products': ForeignKeyRawIdWidget(GroupProduct._meta.get_field('products').rel),
}
Esto me da un error: init () toma al menos 2 argumentos no de palabras clave (1 dada)
products = forms.ModelMultipleChoiceField(widget=ForeignKeyRawIdWidget(GroupProduct._meta.get_field('products').rel))
¿Cómo se hace eso?
Gracias
Solución 2
El uso de ManyToManyRawIdWidget en lugar de ForeignKeyRawIdWidget fijado por mí.
Otros consejos
Se le olvidó pasar el relacionado Modelo-QuerySet a ModelMultipleChoiceField.
products = forms.ModelMultipleChoiceField(Product.objects, widget=ForeignKeyRawIdWidget(GroupProduct._meta.get_field('products').rel))
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow