One for whom the present is not enough? (7)
I believe the answer is:
ingrate
'one for' is the definition.
The definition suggests a singular noun which matches the answer.
'the present is not enough?' is the wordplay.
'the present' becomes 'in' (as in a student being 'in' class).
'is not enough?' becomes 'grate' (I can't justify this - if you can you should give a lot more credence to this answer).
'in'+'grate'='INGRATE'
'whom' acts as a link.
Can you help me to learn more?
(Other definitions for ingrate that I've seen before include "Unappreciative character" , "Thankless type" , "Unthankful person" , "without a word of thanks?" , "Unappreciative person" .)