Как создать пользователя в django?

Пользователь

от ian.heidenreich , в категории: Python , 3 года назад

Как создать пользователя в django?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от dan_farrell , 2 года назад

@ian.heidenreich 

Чтобы создать пользователя в Django, вам нужно будет следующее:

  1. Создайте модель User в вашем приложении. Для этого вам нужно будет использовать стандартную модель AbstractUser из Django, которая предоставляет базовые поля для пользователя, такие как username, password, email и т. д.
1
2
3
4
5
from django.contrib.auth.models import AbstractUser

class User(AbstractUser):
    # Добавьте любые дополнительные поля, которые вы хотели бы включить в модель пользователя
    pass


  1. Определите форму для создания пользователя. Вы можете создать форму, используя класс forms.Form или forms.ModelForm. Если вы используете ModelForm, то вам нужно будет указать модель User, которую вы создали ранее. Пример формы:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
from django import forms

class UserCreationForm(forms.ModelForm):
    password1 = forms.CharField(label='Password', widget=forms.PasswordInput)
    password2 = forms.CharField(label='Password confirmation', widget=forms.PasswordInput)

    class Meta:
        model = User
        fields = ('username', 'email')

    def clean_password2(self):
        # Проверка того, что пароли совпадают
        password1 = self.cleaned_data.get("password1")
        password2


Пользователь

от cloyd , 2 года назад

@ian.heidenreich 

Чтобы создать пользователя в Django, можно использовать следующие шаги:

  1. Откройте файл models.py вашего приложения.
  2. Импортируйте модель пользователя from django.contrib.auth.models import User.
  3. Создайте нового пользователя с помощью метода create_user(): user = User.objects.create_user(username, email, password).
  4. Установите необходимые атрибуты для пользователя, если они есть, например: user.first_name = first_name, user.last_name = last_name.
  5. Сохраните пользователя, используя метод user.save().


Пример кода:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
from django.contrib.auth.models import User

# создание нового пользователя
user = User.objects.create_user(username='myusername', email='[email protected]', password='mypassword')

# установка атрибутов пользователя
user.first_name = 'John'
user.last_name = 'Doe'

# сохранение пользователя
user.save()