Refactor user stuff
This commit is contained in:
parent
c600f3f514
commit
8e9abdd7fb
|
|
@ -78,7 +78,6 @@ THIRD_PARTY_APPS = [
|
||||||
]
|
]
|
||||||
|
|
||||||
LOCAL_APPS = [
|
LOCAL_APPS = [
|
||||||
"vbv_lernwelt.users",
|
|
||||||
"vbv_lernwelt.core",
|
"vbv_lernwelt.core",
|
||||||
# Your stuff: custom apps go here
|
# Your stuff: custom apps go here
|
||||||
]
|
]
|
||||||
|
|
@ -97,7 +96,7 @@ AUTHENTICATION_BACKENDS = [
|
||||||
"django.contrib.auth.backends.ModelBackend",
|
"django.contrib.auth.backends.ModelBackend",
|
||||||
]
|
]
|
||||||
# https://docs.djangoproject.com/en/dev/ref/settings/#auth-user-model
|
# https://docs.djangoproject.com/en/dev/ref/settings/#auth-user-model
|
||||||
AUTH_USER_MODEL = "users.User"
|
AUTH_USER_MODEL = "core.User"
|
||||||
# https://docs.djangoproject.com/en/dev/ref/settings/#login-redirect-url
|
# https://docs.djangoproject.com/en/dev/ref/settings/#login-redirect-url
|
||||||
# LOGIN_REDIRECT_URL = "users:redirect"
|
# LOGIN_REDIRECT_URL = "users:redirect"
|
||||||
# https://docs.djangoproject.com/en/dev/ref/settings/#login-url
|
# https://docs.djangoproject.com/en/dev/ref/settings/#login-url
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,29 @@
|
||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
|
from django.contrib.auth import admin as auth_admin
|
||||||
|
from django.contrib.auth import get_user_model
|
||||||
|
from django.utils.translation import gettext_lazy as _
|
||||||
|
|
||||||
# Register your models here.
|
User = get_user_model()
|
||||||
|
|
||||||
|
|
||||||
|
@admin.register(User)
|
||||||
|
class UserAdmin(auth_admin.UserAdmin):
|
||||||
|
fieldsets = (
|
||||||
|
(None, {"fields": ("username", "password")}),
|
||||||
|
(_("Personal info"), {"fields": ("first_name", "last_name", "email")}),
|
||||||
|
(
|
||||||
|
_("Permissions"),
|
||||||
|
{
|
||||||
|
"fields": (
|
||||||
|
"is_active",
|
||||||
|
"is_staff",
|
||||||
|
"is_superuser",
|
||||||
|
"groups",
|
||||||
|
"user_permissions",
|
||||||
|
),
|
||||||
|
},
|
||||||
|
),
|
||||||
|
(_("Important dates"), {"fields": ("last_login", "date_joined")}),
|
||||||
|
)
|
||||||
|
list_display = ["username", "first_name", "last_name", "is_active", "is_superuser"]
|
||||||
|
search_fields = ["first_name", "last_name", "email", "username"]
|
||||||
|
|
|
||||||
|
|
@ -4,3 +4,9 @@ from django.apps import AppConfig
|
||||||
class CoreConfig(AppConfig):
|
class CoreConfig(AppConfig):
|
||||||
default_auto_field = 'django.db.models.BigAutoField'
|
default_auto_field = 'django.db.models.BigAutoField'
|
||||||
name = 'vbv_lernwelt.core'
|
name = 'vbv_lernwelt.core'
|
||||||
|
|
||||||
|
def ready(self):
|
||||||
|
try:
|
||||||
|
import vbv_lernwelt.core.signals # noqa F401
|
||||||
|
except ImportError:
|
||||||
|
pass
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
# Generated by Django 3.2.12 on 2022-02-02 13:01
|
# Generated by Django 3.2.12 on 2022-02-03 15:46
|
||||||
|
|
||||||
import django.contrib.auth.models
|
import django.contrib.auth.models
|
||||||
import django.contrib.auth.validators
|
import django.contrib.auth.validators
|
||||||
|
|
@ -15,6 +15,19 @@ class Migration(migrations.Migration):
|
||||||
]
|
]
|
||||||
|
|
||||||
operations = [
|
operations = [
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='SecurityRequestResponseLog',
|
||||||
|
fields=[
|
||||||
|
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
|
('label', models.CharField(blank=True, default='', max_length=255)),
|
||||||
|
('request_method', models.CharField(blank=True, default='', max_length=255)),
|
||||||
|
('request_full_path', models.CharField(blank=True, default='', max_length=255)),
|
||||||
|
('request_username', models.CharField(blank=True, default='', max_length=255)),
|
||||||
|
('request_client_ip', models.CharField(blank=True, default='', max_length=255)),
|
||||||
|
('response_status_code', models.CharField(blank=True, default='', max_length=255)),
|
||||||
|
('additional_json_data', models.JSONField(blank=True, default=dict)),
|
||||||
|
],
|
||||||
|
),
|
||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='User',
|
name='User',
|
||||||
fields=[
|
fields=[
|
||||||
|
|
@ -0,0 +1,25 @@
|
||||||
|
from django.db import migrations
|
||||||
|
|
||||||
|
from vbv_lernwelt.core.models import User
|
||||||
|
|
||||||
|
|
||||||
|
def create_iterativ_users(apps, schema_editor):
|
||||||
|
for username in ['info@iterativ.ch', ]:
|
||||||
|
user = User.objects.create(
|
||||||
|
username=username,
|
||||||
|
email=username,
|
||||||
|
is_superuser=True,
|
||||||
|
is_staff=True,
|
||||||
|
)
|
||||||
|
user.set_password('ACEEs0DCmNaPxdoNV8vhccuCTRl9b')
|
||||||
|
user.save()
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
dependencies = [
|
||||||
|
('core', '0001_initial'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.RunPython(create_iterativ_users),
|
||||||
|
]
|
||||||
|
|
@ -1,7 +1,16 @@
|
||||||
|
from django.contrib.auth.models import AbstractUser
|
||||||
from django.db import models
|
from django.db import models
|
||||||
from django.db.models import JSONField
|
from django.db.models import JSONField
|
||||||
|
|
||||||
|
|
||||||
|
class User(AbstractUser):
|
||||||
|
"""
|
||||||
|
Default custom user model for VBV Lernwelt.
|
||||||
|
If adding fields that need to be filled at user signup,
|
||||||
|
"""
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
class SecurityRequestResponseLog(models.Model):
|
class SecurityRequestResponseLog(models.Model):
|
||||||
label = models.CharField(max_length=255, blank=True, default='')
|
label = models.CharField(max_length=255, blank=True, default='')
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,30 +0,0 @@
|
||||||
from django.contrib import admin
|
|
||||||
from django.contrib.auth import admin as auth_admin
|
|
||||||
from django.contrib.auth import get_user_model
|
|
||||||
from django.utils.translation import gettext_lazy as _
|
|
||||||
|
|
||||||
User = get_user_model()
|
|
||||||
|
|
||||||
|
|
||||||
@admin.register(User)
|
|
||||||
class UserAdmin(auth_admin.UserAdmin):
|
|
||||||
|
|
||||||
fieldsets = (
|
|
||||||
(None, {"fields": ("username", "password")}),
|
|
||||||
(_("Personal info"), {"fields": ("first_name", "last_name", "email")}),
|
|
||||||
(
|
|
||||||
_("Permissions"),
|
|
||||||
{
|
|
||||||
"fields": (
|
|
||||||
"is_active",
|
|
||||||
"is_staff",
|
|
||||||
"is_superuser",
|
|
||||||
"groups",
|
|
||||||
"user_permissions",
|
|
||||||
),
|
|
||||||
},
|
|
||||||
),
|
|
||||||
(_("Important dates"), {"fields": ("last_login", "date_joined")}),
|
|
||||||
)
|
|
||||||
list_display = ["username", "first_name", "last_name", "is_active", "is_superuser"]
|
|
||||||
search_fields = ["first_name", "last_name", "email", "username"]
|
|
||||||
|
|
@ -1,13 +0,0 @@
|
||||||
from django.apps import AppConfig
|
|
||||||
from django.utils.translation import gettext_lazy as _
|
|
||||||
|
|
||||||
|
|
||||||
class UsersConfig(AppConfig):
|
|
||||||
name = "vbv_lernwelt.users"
|
|
||||||
verbose_name = _("Users")
|
|
||||||
|
|
||||||
def ready(self):
|
|
||||||
try:
|
|
||||||
import vbv_lernwelt.users.signals # noqa F401
|
|
||||||
except ImportError:
|
|
||||||
pass
|
|
||||||
|
|
@ -1,3 +0,0 @@
|
||||||
from django.contrib.auth import get_user_model
|
|
||||||
|
|
||||||
User = get_user_model()
|
|
||||||
|
|
@ -1,17 +0,0 @@
|
||||||
from django.contrib.auth.models import AbstractUser
|
|
||||||
from django.urls import reverse
|
|
||||||
|
|
||||||
|
|
||||||
class User(AbstractUser):
|
|
||||||
"""
|
|
||||||
Default custom user model for VBV Lernwelt.
|
|
||||||
If adding fields that need to be filled at user signup,
|
|
||||||
"""
|
|
||||||
def get_absolute_url(self):
|
|
||||||
"""Get url for user's detail view.
|
|
||||||
|
|
||||||
Returns:
|
|
||||||
str: URL for user detail.
|
|
||||||
|
|
||||||
"""
|
|
||||||
return reverse("users:detail", kwargs={"username": self.username})
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
|
|
||||||
|
|
@ -1,2 +0,0 @@
|
||||||
|
|
||||||
|
|
||||||
Loading…
Reference in New Issue