Multiplay Labs

tech hits and tips from Multiplay

Archive for September 21st, 2009

Invalid Foreign Key Silently Breaks Rails ActiveRecord belongs_to

without comments

If for whatever reason the foreign key is invalid for a belongs_to relationship in ActiveRecord then the relationship is silently ignored. This results in object.relationship.method calls failing with nil errors and is quite frustrating to debug as no attempt to load the related object is logged.
Given this if a related object which is listed as a belongs_to in the model yet doesn’t work check that either the manual :foreign_key or the automatically determined version i.e. name + ‘_id’ exists in the dependencies table.

Written by Dilbert

September 21st, 2009 at 12:18 am

Posted in Code,Rails