Setting model association `source_type` to polymorphic object

I am trying to setup a way for my User and Project model to both be followed through the same Relationship model.

I also want to be able to get all items the user has followed with this association:
has_many :following, through: :active_relationships, source: :followable, source_type: "Followable"


This way, the projects and users any user has followed can be called with user.following. In this case, Followable is the polymorphic object that is attributed to both users and projects. Unfortunately, it seems that I cannot set my source_type to a polymorphic object. Is there a way I can bypass this?

Many thanks

I don’t think polymorphism in Rails can work that way

did you try

has_many :users_following, through: :active_relationships, source: :followable, source_type: "FollowableUser"

has_many :projects_following, through: :active_relationships, source: :followable, source_type: "FollowableProject"

Yeah I guess that would work. I would need to change a lot in my code but yeah I could do that. It’s too bad if you can’t do it in Rails