I taught my son to knit this winter. He is 7. He would sit in front of me on the sofa. We'd pull his project in front of us. I had him hold the needles and we'd say the rhymes (but we made our own more "cooler" ones) and I'd help him so that he'd not get it wrong.
We only did about 5 minutes of knitting every other day or so.
He can do it fairly well on his own. He does tend to loose stitches as he forgets to slip off the stitch every time and then tries to do several at a time.
But it worked.
My rule was, every time I started to feel annoyed I called it quits. I figured I had better stop before I "ruin" the experience.
And that left him always wanting more so he'd bring up the subject later on and desire more. Not a bad thing to have in a student!