Beispiel #1
0
 def create(self, validated_data):
     username = validated_data['username']
     password = validated_data['password']
     email = validated_data['email']
     user_obj = User(username=username, email=email)
     user_obj.set_password(password)
     user_obj.save()
     return validated_data
Beispiel #2
0
def register():
    """View for register a new user.
    """

    if current_user.is_authenticated:
        return redirect(url_for('habr_app.posts'))

    title = 'Регистрация'
    popular_tags = get_popular_tags()
    register_form = RegisterForm()

    if register_form.validate_on_submit():
        user = User.query.filter_by(
            username=register_form.username.data).first()
        if user:
            flash('Такой пользователь уже есть')
            return redirect(url_for('register'))

        user = User(username=register_form.username.data)
        user.set_password(register_form.password.data)

        db.session.add(user)
        db.session.commit()

        flash('Вы успешно зарегистрировались')
        return redirect(url_for('login'))

    if request.method == 'POST':
        flash('Проверьте требования полей в форме.')

    return render_template(
        'register.html',
        title=title,
        tags=popular_tags,
        form=register_form,
        current_user=current_user,
    )
Beispiel #3
0
from getpass import getpass
import sys

from posts.app import app
from posts.models import User
from posts.models.database import db

with app.app_context():
    username = input('Введите имя пользователя: ')

    if db.session.query(User).filter_by(username=username).count():
        sys.exit('Такой пользователь уже есть')

    password = getpass('Введите пароль: ')
    password2 = getpass('Повторите пароль: ')
    if not password == password2:
        sys.exit('Пароли должны совпадать')

    new_user = User(username=username, is_admin=True)
    new_user.set_password(password)

    db.session.add(new_user)
    db.session.commit()
    print(f'{ new_user } added')
Beispiel #4
0
 def create(self, validated_data):
     password = validated_data.pop('password')
     user = User(**validated_data)
     user.set_password(password)
     user.save()
     return user