Enabling Large Language Models to Learn from Rules