I\'ve built an app with a table called Project which is stored in sqlite, I want allow only super users can view the approve colum
class ProjectView(sqla.ModelView):
def inaccessible_callback(self, name, **kwargs):
if current_user.is_authenticated:
abort(403)
else:
return redirect(url_for('security.login', next=request.url))
@property
def _form_edit_rules(self):
return rules.RuleSet(self, self.form_rules)
@_form_edit_rules.setter
def _form_edit_rules(self, value):
pass
@property
def _form_create_rules(self):
return rules.RuleSet(self, self.form_rules)
@_form_create_rules.setter
def _form_create_rules(self, value):
pass
@property
def form_rules(self):
form_rules = [
rules.FieldSet(('team'), 'Personal Info'),
rules.Header('Project Info'),
rules.Field('project_name')
]
if not has_app_context() or current_user.has_role('superuser'):
form_rules.append('approve')
form_rules.append(rules.Container('rule_demo.wrap',
rules.Field('notes')))
return form_rules