3
0
Fork 0

feat: allow widget factory override for ObjectRef schema type

This commit is contained in:
Lance Edgar 2026-02-27 16:27:27 -06:00
parent cba8e4774d
commit 590441c0be

View file

@ -457,6 +457,7 @@ class ObjectRef(colander.SchemaType):
:returns: Instance of :returns: Instance of
:class:`~wuttaweb.forms.widgets.ObjectRefWidget`. :class:`~wuttaweb.forms.widgets.ObjectRefWidget`.
""" """
factory = kwargs.pop("factory", widgets.ObjectRefWidget)
if "values" not in kwargs: if "values" not in kwargs:
query = self.get_query() query = self.get_query()
@ -469,7 +470,7 @@ class ObjectRef(colander.SchemaType):
if "url" not in kwargs: if "url" not in kwargs:
kwargs["url"] = self.get_object_url kwargs["url"] = self.get_object_url
return widgets.ObjectRefWidget(self.request, **kwargs) return factory(self.request, **kwargs)
def get_object_url(self, obj): def get_object_url(self, obj):
""" """