2015-03-04 3 views
0

Я хочу, чтобы пользователь мог редактировать свой профиль, но не может редактировать другие пользователи, как сделать это ограничение в Django?Как ограничивать Пользователь может редактировать свой профиль только в django?

@login_required 
def edit_profile: 
    # some check 
    pass 
+0

Что, быть может, вас смущает? Когда вы войдете в систему, вы получите объект запроса в запросе. 'request.user' Затем, используя' request.user.profile', вы можете делать все, что хотите. Это, очевидно, произойдет только в профиле этого пользователя. –

+0

Спасибо, есть некоторая ошибка в моем дизайне шаблона url этого вида. – zbtong

ответ

2

Вам не нужны никакие ограничения. Просто получите информацию о зарегистрированном пользователем и отредактируйте его:

@login_required 
def edit_profile(request): 
    profile = request.user.profile 
    ... 
+0

Итак, URL-адрес вида edit_profile - это что-то вроде '/ edit_profile /', а затем получить информацию от пользователя? – zbtong

+0

Да @zbtong. Запрос должен быть сделан лицом, чей профиль он есть. Если нет, отправьте им сообщение о том, что им не разрешено редактировать профили других людей. –

+0

Как пользователь может отправить запрос на редактирование другого профиля, если URL-адрес «/ edit_profile /»? @AshishNitinPatil – zbtong

Смежные вопросы