This follows this prior question, which was answered. I actually discovered I could remove a join from that query, so now the working query is
start_cards =
This might have changed in recent release of Rails, but the appropriate way to solve this problem is to add :readonly => false to the find options.