Skip to content

Fix has_one polymorphism#945

Merged
lgebhardt merged 2 commits intoJSONAPI-Resources:masterfrom
nagirrab:has_one_polymorphic_fix
Dec 29, 2016
Merged

Fix has_one polymorphism#945
lgebhardt merged 2 commits intoJSONAPI-Resources:masterfrom
nagirrab:has_one_polymorphic_fix

Conversation

@nagirrab
Copy link
Copy Markdown
Contributor

Problem: has_one relationships that are polymorphic do not work as expected: instead of getting the actual polymorphic resource, you get instead the base class.

Fix: extend the handling used in the polymorphic belongs_to relationship to cover the has_one case as well. I used the exact same code as the block above.

Tested on Rails 4.2.x.

Let me know if you have any questions or concerns.

@lgebhardt
Copy link
Copy Markdown
Contributor

@nagirrab Thanks for the fix. Could you add a test that demonstrates the issue and confirms the fix?

@nagirrab
Copy link
Copy Markdown
Contributor Author

@lgebhardt done. The test case is a little wonky because has_one polymorphism through other relations is actually not trivial to get working, but hopefully it illustrates the point.

@lgebhardt lgebhardt merged commit 9ad4d91 into JSONAPI-Resources:master Dec 29, 2016
@lgebhardt
Copy link
Copy Markdown
Contributor

@nagirrab Thanks!

lgebhardt pushed a commit that referenced this pull request Jan 17, 2017
* Fix has_one polymorphism

* Add tests for has one polymorphic serialization

(cherry picked from commit 9ad4d91)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants