Я работаю над проектом, в котором есть несколько типов пользователей, таких как «Администратор», «Координатор», «Субкоординатор», и каждый пользователь может выполнять разные роли в разных подразделениях. Например. пользователь A может быть координатором в DIVISION XX, затем A может быть администратором в DIVISION YY, но он не может иметь ту же роль в том же подразделении.
Я планирую написать для этого собственные разрешения и роли. то, что я написал, выглядит примерно так:
def coordinator(request, uid):
if request.method == 'GET':
//some logic
if request.method == 'POST':
//some logic
if request.method == 'PATCH':
//some logic
if request.method == 'DELETE':
//some logic
что я не хочу сделать, это следующий подход:
def coordiantor_delete(request, uid):
if request.method == 'DELETE':
def coordiantor_detail(request, uid):
if request.method == 'GET':
def coordiantor_create(request):
if request.method == 'POST':
def coordiantor_update(request, uid):
if request.method == 'PATCH':
Есть ли способ добавитьправа доступа к определенным HTTP-методам функции представления, не разделяя ее на различные представления. Поскольку я хочу иметь только одну конечную точку API, такую как / координатор / и / координатор / идентификатор /, которая должна поддерживать вышеупомянутые методы HTTP, но с разрешениями, такими как администратор, также может удалить координатор из подразделения, а сам координатор также может покинуть подразделение, и никто другойимеет эти полномочия над методом DELETE. Дайте мне знать, каковы возможные подходы к этому или некоторым другим изменениям, которые необходимо внести.