Вопрос

Я видел пару способов расширения пользовательской информации пользователей и решил принять метод моделей наследования.

Например, у меня есть:

class Parent(User):
    contact_means = models.IntegerField()
    is_staff = False 
    objects = userManager()

Теперь это сделано, я скачал Django_registration, чтобы помочь мне с отправкой электронных писем для новых пользователей. Вещь, а не используя регистрационные формы для регистрации нового пользователя, я хочу вызвать возможность отправки / ACITVation электронного письма Django_registration. Итак, мой рабочий процесс:

1. add new Parent object in admin page.
2. send email

Моя проблема в том, что Django-регистрация создает новый профиль регистрации вместе с новым пользователем в таблице пользователя. Как мне настроить это так, чтобы я мог добавить запись пользователя в пользовательскую таблицу пользователей.

Я пытался создать

modelAdmin

И измените метод Save_Model, чтобы запустить Create_Inactive_user из django_registration, однако я не как сохранить объект пользователя, созданный из django_registration, в мою родительскую таблицу, когда я использую модель наследования модели, и у меня нет атрибута внешнего ключа в моей родительской модели.

Это было полезно?

Решение

Это, вероятно, что-то вроде:

p = Parent()
p.user_ptr = user
p.contact_means = ...
p.save()

(Django создает внешний ключ для вас при выполнении модели наследования, а также атрибут, заканчивающийся в _PTR)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top