Я делаю приложение оплаты за обучение, используя Flask и используя Flask-admin для управления платежом. В этом приложении есть три роли , которые суперпользователь , администратор школы и родитель , которые хотят обучаться у своих детей.
Я знаю, как сделать роль для суперпользователя и школьного администратора , который суперпользователя может создать администратор школы , а администратор школы может добавлять, редактировать или удалять данные ученика.
пока, это мой код для школьного администратора модель просмотра:
class SchoolAdminModelView(sqla.ModelView):
def is_accessible(self):
if not current_user.is_active or not current_user.is_authenticated:
return False
if current_user.has_role('schooladmin'):
return True
return False
def _handle_view(self, name, **kwargs):
if not self.is_accessible():
if current_user.is_authenticated:
abort(403)
else:
return redirect(url_for('security.login', next=request.url))
Но для parent я хочу, чтобы родительский аккаунт просто мог видеть или читать данные без доступа для их изменения.
Как на картинке ниже:
Это представление school admin , теперь для учетной записи parent я хочу удалить значок редактирования и удаления, или функция -
Итак, как это сделать ..?