Для django администратора, как я добавляю поле к модели User и имею ее доступный для редактирования в администраторе?

Я конвертирую arguments в Array , используя Array.prototype.slice , чтобы я мог concat с другим Array того, что я хочу добавить, затем передать его в console.log.apply(console, /*here*/);

var log = function () {
    return console.log.apply(
        console,
        ['['+new Date().toISOString().slice(11,-5)+']'].concat(
            Array.prototype.slice.call(arguments)
        )
    );
};
log(['foo']); // [18:13:17] ["foo"]

Кажется, что arguments тоже можно Array.prototype.unshift редактировать, но я не знаю, хорошо ли это модифицировать, как это Идея / будет иметь другие побочные эффекты

var log = function () {
    Array.prototype.unshift.call(
        arguments,
        '['+new Date().toISOString().slice(11,-5)+']'
    );
    return console.log.apply(console, arguments);
};
log(['foo']); // [18:13:39] ["foo"]

9
задан Silfheed 30 June 2009 в 02:27
поделиться

3 ответа

Сначала "это подключено?" вопрос - Вы вручную добавляли new_field в таблицу users в базе данных? Конечно, Syncdb не позаботился бы об этом.

После этого я бы попробовал добавить поля в существующий UserAdmin, а не перестраивать его с нуля:

from django.contrib.auth.admin import UserAdmin

UserAdmin.list_display += ('new_field',)  # don't forget the commas
UserAdmin.list_filter += ('new_field',)
UserAdmin.fieldsets += ('new_field',)
19
ответ дан 4 December 2019 в 08:02
поделиться

Желательно написать собственный класс профиля пользователя и присоединить его к модели пользователя. Затем вы можете использовать метод get_profile () для получения профиля от пользователя.

Создание подкласса администратора профиля от встроенного администратора также должно позволить вам редактировать профиль на странице пользователя, что почти то, что вы пытаетесь сделать.

В этом посте есть действительно хорошая рецензия на проблему: http://www.b-list.org/weblog/2006/jun/06/django-tips-exnding-user-model/

4
ответ дан 4 December 2019 в 08:02
поделиться

Я получил ошибку «что отсутствует в форме» и обнаружил, что это произошло из-за мое поле помечено в модели как editable = False.

0
ответ дан 4 December 2019 в 08:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: