Raise an error for has_one associations which try to go :through a polymorphic association

This PR addresses the missing exception dedicated to `has_one` associations which try to go :through a polymorphic association.

Issue raised by @georgemillo in #17263.
I'm sure you were just following the style of the above code but can you change this to the new hash syntax? New code should use `has_one :premium_club, through: :admittable` style. Thanks!