Previous implementation was not really compatible with active record models. It fixes it with scope instead of methods.