Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix referencefield dependencies in sample add #2385

Merged
merged 83 commits into from
Sep 12, 2023

Conversation

ramonski
Copy link
Contributor

@ramonski ramonski commented Sep 11, 2023

Description of the issue/feature this PR addresses

☝️ NOTE: Please merge #2384 first!

This PR fixes the dependent reference fields in sample add form

Linked issue: #2380

Current behavior before PR

Dependent reference fields (e.g. Contact -> CC Contacts) are not set in sample add form

Desired behavior after PR is merged

Dependent reference fields are set correctly in sample add form

--
I confirm I have tested this PR thoroughly and coded it according to PEP8
and Plone's Python styleguide standards.

ramonski and others added 13 commits September 11, 2023 23:29
```
Traceback (innermost last):
  Module ZPublisher.WSGIPublisher, line 176, in transaction_pubevents
  Module ZPublisher.WSGIPublisher, line 385, in publish_module
  Module ZPublisher.WSGIPublisher, line 288, in publish
  Module ZPublisher.mapply, line 85, in mapply
  Module ZPublisher.WSGIPublisher, line 63, in call_object
  Module senaite.core.browser.widgets.referencewidget_search, line 29, in __call__
  Module senaite.core.browser.widgets.referencewidget_search, line 73, in search
  Module senaite.core.browser.widgets.referencewidget_search, line 47, in get_ref_data
  Module senaite.core.adapters.referencewidget.dataproviders, line 105, in to_dict
  Module senaite.core.adapters.referencewidget.dataproviders, line 50, in lookup
  Module bika.lims.content.batch, line 260, in getProgress
  Module bika.lims.content.batch, line 242, in getAnalysisRequests
  Module bika.lims.content.batch, line 234, in getAnalysisRequestsBrains
  Module Products.CMFCore.utils, line 13, in check_getToolByName
  Module Products.CMFCore.utils, line 139, in getToolByName
AttributeError: senaite_catalog_sample
```
Some functions from content types my rely on `aq_parent` (e.g objects that
implement `IClientAware`). Current decorator unwraps acquisition from the
object to extract data from, so functions that use acquisition fail

```
Traceback (innermost last):
  Module ZPublisher.WSGIPublisher, line 176, in transaction_pubevents
  Module ZPublisher.WSGIPublisher, line 385, in publish_module
  Module ZPublisher.WSGIPublisher, line 288, in publish
  Module ZPublisher.mapply, line 85, in mapply
  Module ZPublisher.WSGIPublisher, line 63, in call_object
  Module senaite.core.browser.widgets.referencewidget_search, line 29, in __call__
  Module senaite.core.browser.widgets.referencewidget_search, line 73, in search
  Module senaite.core.browser.widgets.referencewidget_search, line 47, in get_ref_data
  Module senaite.core.adapters.referencewidget.dataproviders, line 95, in to_dict
  Module senaite.core.adapters.referencewidget.dataproviders, line 64, in get_base_info
  Module senaite.core.adapters.referencewidget.dataproviders, line 50, in lookup
  Module bika.lims.content.analysisrequest, line 1466, in Description
AttributeError: 'AnalysisRequest' object has no attribute 'aq_parent'
```
@xispa xispa merged commit 902208b into 2.x Sep 12, 2023
2 checks passed
@xispa xispa deleted the fix-referencefield-dependencies-in-sample-add branch September 12, 2023 12:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging this pull request may close these issues.

None yet

2 participants