feature/fix_generate_pass
parent
256db130dc
commit
514671b31f
9 changed files with 168 additions and 24 deletions
@ -0,0 +1,45 @@ |
|||||||
|
from django.contrib.auth import get_user_model |
||||||
|
from django.contrib.auth.models import Group |
||||||
|
from django.core.management.base import BaseCommand, CommandError |
||||||
|
import os |
||||||
|
import shutil |
||||||
|
from django.conf import settings |
||||||
|
|
||||||
|
|
||||||
|
class Command(BaseCommand): |
||||||
|
help = 'Добавляет 1 или нескольких юзеров в указанные группы' |
||||||
|
|
||||||
|
def add_arguments(self, parser): |
||||||
|
parser.add_argument( |
||||||
|
'--users', |
||||||
|
type=str, |
||||||
|
dest='users_emails', |
||||||
|
help='Емейлы пользователей для добавления' |
||||||
|
) |
||||||
|
parser.add_argument( |
||||||
|
'--groups', |
||||||
|
type=str, |
||||||
|
dest='groups_names', |
||||||
|
help='Наименования групп для добавления' |
||||||
|
) |
||||||
|
|
||||||
|
def handle(self, *args, **options): |
||||||
|
for email in options['users_emails'].split(', '): |
||||||
|
try: |
||||||
|
user = get_user_model().objects.get(email=email) |
||||||
|
|
||||||
|
for name in options['groups_names'].split(', '): |
||||||
|
try: |
||||||
|
g = Group.objects.get(name=name) |
||||||
|
except Group.DoesNotExist: |
||||||
|
print("""Group with name "%s" doesn't exist""") |
||||||
|
|
||||||
|
if name == "admin": |
||||||
|
user.is_superuser = True |
||||||
|
user.is_staff = True |
||||||
|
if name != "students": |
||||||
|
user.is_staff = True |
||||||
|
g.user_set.add(user) |
||||||
|
user.save() |
||||||
|
except get_user_model().DoesNotExist: |
||||||
|
print("""user with email: "%s" not found""" % email) |
||||||
@ -0,0 +1,20 @@ |
|||||||
|
# -*- coding: utf-8 -*- |
||||||
|
# Generated by Django 1.11.6 on 2017-11-17 11:13 |
||||||
|
from __future__ import unicode_literals |
||||||
|
|
||||||
|
from django.db import migrations |
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration): |
||||||
|
|
||||||
|
dependencies = [ |
||||||
|
('courses', '0007_auto_20171103_1627'), |
||||||
|
('access', '0007_auto_20171106_1808'), |
||||||
|
] |
||||||
|
|
||||||
|
operations = [ |
||||||
|
migrations.AlterUniqueTogether( |
||||||
|
name='progress', |
||||||
|
unique_together=set([('user', 'course')]), |
||||||
|
), |
||||||
|
] |
||||||
Loading…
Reference in new issue