Adding multiple metadata at once fails
Hi
I found something in 3.1.4. I cannot add more than 1 metadata type to an existing document at once.
Steps to reproduce:
- Prepare two metadata types in my case:
- "Für Jahr" and "Für Monat"
- Both without Validator
- Both with Lookup (comma separated)
- A document type which has both types optional
- Open a document with the document type
- Click add metadata
- Choose both types to add and click add
- Webiterface shows just "error"
- When opening document again just one metadata type is added (yet empty), in my case "Für jahr"
- Exception in log
Traceback from log:
Traceback (most recent call last): File "/opt/mayan-edms/lib/python2.7/site-packages/django/core/handlers/exception.py", line 41, in inner response = get_response(request) File "/opt/mayan-edms/lib/python2.7/site-packages/django/core/handlers/base.py", line 249, in _legacy_get_response response = self._get_response(request) File "/opt/mayan-edms/lib/python2.7/site-packages/django/core/handlers/base.py", line 187, in _get_response response = self.process_exception_by_middleware(e, request) File "/opt/mayan-edms/lib/python2.7/site-packages/django/core/handlers/base.py", line 185, in _get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) File "/opt/mayan-edms/lib/python2.7/site-packages/django/views/generic/base.py", line 68, in view return self.dispatch(request, *args, **kwargs) File "/opt/mayan-edms/lib/python2.7/site-packages/mayan/apps/metadata/views.py", line 59, in dispatch ).dispatch(request, *args, **kwargs) File "/opt/mayan-edms/lib/python2.7/site-packages/mayan/apps/common/mixins.py", line 345, in dispatch ).dispatch(request, *args, **kwargs) File "/opt/mayan-edms/lib/python2.7/site-packages/mayan/apps/common/mixins.py", line 310, in dispatch ).dispatch(request, *args, **kwargs) File "/opt/mayan-edms/lib/python2.7/site-packages/django/views/generic/base.py", line 88, in dispatch return handler(request, *args, **kwargs) File "/opt/mayan-edms/lib/python2.7/site-packages/django/views/generic/edit.py", line 183, in post return self.form_valid(form) File "/opt/mayan-edms/lib/python2.7/site-packages/mayan/apps/metadata/views.py", line 75, in form_valid result = super(DocumentMetadataAddView, self).form_valid(form=form) File "/opt/mayan-edms/lib/python2.7/site-packages/mayan/apps/common/generics.py", line 307, in form_valid self.view_action(form=form) File "/opt/mayan-edms/lib/python2.7/site-packages/mayan/apps/common/mixins.py", line 207, in view_action self.object_action(form=form, instance=instance) File "/opt/mayan-edms/lib/python2.7/site-packages/mayan/apps/metadata/views.py", line 161, in object_action metadata_type=metadata_type, File "/opt/mayan-edms/lib/python2.7/site-packages/django/db/models/manager.py", line 85, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) File "/opt/mayan-edms/lib/python2.7/site-packages/django/db/models/query.py", line 371, in get clone = self.filter(*args, **kwargs) File "/opt/mayan-edms/lib/python2.7/site-packages/django/db/models/query.py", line 787, in filter return self._filter_or_exclude(False, *args, **kwargs) File "/opt/mayan-edms/lib/python2.7/site-packages/django/db/models/query.py", line 805, in _filter_or_exclude clone.query.add_q(Q(*args, **kwargs)) File "/opt/mayan-edms/lib/python2.7/site-packages/django/db/models/sql/query.py", line 1250, in add_q clause, _ = self._add_q(q_object, self.used_aliases) File "/opt/mayan-edms/lib/python2.7/site-packages/django/db/models/sql/query.py", line 1276, in _add_q allow_joins=allow_joins, split_subq=split_subq, File "/opt/mayan-edms/lib/python2.7/site-packages/django/db/models/sql/query.py", line 1179, in build_filter self.check_related_objects(field, value, opts) File "/opt/mayan-edms/lib/python2.7/site-packages/django/db/models/sql/query.py", line 1076, in check_related_objects self.check_query_object_type(value, opts, field) File "/opt/mayan-edms/lib/python2.7/site-packages/django/db/models/sql/query.py", line 1054, in check_query_object_type (value, opts.object_name)) ValueError: Cannot query "Für Jahr": Must be "Document" instance.
Greetings! Valen