gr8, but... I like extracting mixins, but I also agree with this guy http://blog.codeclimate.com/blog/2012/10/17/7-ways-to-decompose-fat-activerecord-models/

And I really believe you can do something more OO here, with a proper class for the Menu (keep the concern, of course!).