fix has_one_through to work, not just pass specs