improve query to BaseModel temp save