Я пытаюсь реализовать множество полевых отношений в django-nonrel на mongodb. Было предложено на:
Поле формы Django-nonrel для ListField
После принятого ответа
models.py
class MyClass(models.Model):
field = ListField(models.ForeignKey(AnotherClass))
Я не уверен, куда идет следующее, это было проверено в fields.py, widgets, py, models.py
class ModelListField(ListField):
def formfield(self, **kwargs):
return FormListField(**kwargs)
class ListFieldWidget(SelectMultiple):
pass
class FormListField(MultipleChoiceField):
"""
This is a custom form field that can display a ModelListField as a Multiple Select GUI element.
"""
widget = ListFieldWidget
def clean(self, value):
#TODO: clean your data in whatever way is correct in your case and return cleaned data instead of just the value
return value
admin.py
class MyClassAdmin(admin.ModelAdmin):
form = MyClassForm
def __init__(self, model, admin_site):
super(MyClassAdmin,self).__init__(model, admin_site)
admin.site.register(MyClass, MyClassAdmin)
Появляются следующие ошибки:
Если в файле models.py
используется код среднего пользовательского класса
name 'SelectMultiple' is not defined
Если код пользовательского класса снят с models.py:
No form field implemented for <class 'djangotoolbox.fields.ListField'>