id,summary,reporter,owner,description,type,status,component,version,severity,resolution,keywords,cc,stage,has_patch,needs_docs,needs_tests,needs_better_patch,easy,ui_ux 18540,Improve Model flexibility by allowing a custom Options class,Chris Wilson,nobody,"For example, if I want to specify that my model has custom permissions, to be able to use them in the admin, I can't subclass Options to add or change the get_*_permission methods, because `ModelBase.__new__` does this: {{{ new_class.add_to_class('_meta', Options(meta, **kwargs)) }}} I think it would be great to allow specifying a different Options class in the model's Meta class: {{{ class MyModelOptions(Options): def get_view_permission(self): return 'view_%s' % self.object_name.lower() class MyModel(Model): class Meta: options_class = MyModelOptions }}} I think the code change would be quite simple: {{{ options_class = getattr(meta, 'options_class', Options) new_class.add_to_class('_meta', options_class(meta, **kwargs)) }}} Acceptable?",New feature,closed,"Database layer (models, ORM)",1.4,Normal,wontfix,,,Unreviewed,0,0,0,0,0,0