allow Model#save with patch: true to take different attrs. Fixes #3232