Вам необходимо добавить AUTHENTICATION_BACKENDS
в настройки вашего проекта settings.py
AUTHENTICATION_BACKENDS = [
'django.contrib.auth.backends.ModelBackend'
]
, а также, поскольку вы уже перезаписали пользовательскую модель Django, вам необходимо указать местоположение пользовательской модели в вашем settings.py
[ 111]хорошо я лично следую этим простым правилам:
Всего одна довольно конкретная подсказка я добрался однажды от квалифицированного GUI techlead:
, Когда у Вас есть диалоговое окно/форма с кнопками, текстовые поля, списки и т.д., пытаются сохранить пространство между ними последовательным и симметричным. Например, попытайтесь использовать то же расстояние между виджетами во всех направлениях, и если группа виджетов разделяется от другого путем увеличения пространства между группами, попытайтесь сделать то пространство дубликатом пространства между средствами управления в группах. Например, если все кнопки в одном разделе разделяются на 16 пикселей во всех направлениях, попытайтесь делать большее пространство следующей группе 32, 64, приблизительно 128 пикселей.
Это намного более удобно для человеческого глаза для интерпретации чего-то, что связывается с отличной симметрией.
С тех пор, как я попробовал его, я всегда использую этот метод с очень хорошими результатами. Я даже возвратился и переделал более старые графический интерфейсы пользователя и был удивлен видеть такую реконструкцию от этой корректировки только.
РЕДАКТИРОВАНИЕ:
Забыл упоминать важный урок, который я извлек из вышеупомянутого метода:
при расположении всех виджетов согласно этой системе (в особенности при переделке старых нарушенных графический интерфейсов пользователя) у Вас могло бы закончиться пространство, и Ваше диалоговое окно должно быть расширено. В какой-то момент можно чувствовать, что диалоговое окно становится слишком большим (например, блокирует связанный фон GUI или связанные виджеты, заканчивающиеся слишком далекий друг от друга). Это могло бы быть хорошим индикатором, что, возможно, необходимо разделить диалоговое окно на вкладки, переместить вещи в меню или просто превращение его в понятие стиля мастера и т.д.
, Это довольно не связано с интервалом виджета, но касается предмета less-is-more для пользователя для взаимодействия с в любой момент времени. Интересно, что, когда Вы начинаете заставлять вещи исправиться, это "слегка колеблется вода" и иногда вынуждает Вас сделать больше вещей правом (отчасти как фиксация правильности константы :p).
После того как Вы завершили дизайн: Имейте несколько человек, садятся перед Вашим программным обеспечением и позволяют им попытаться решить задачу, что Ваше программное обеспечение было разработано для (один за другим, не внезапно...). Абсолютно удивительно, что Вы изучите только путем наблюдения их.
, Если возможно, тестеры должны соответствовать профилю для Вашей типичной клиентской группы. Чем больше людей можно найти для этого вида тестирования удобства пользования, тем лучше, но даже наблюдающий просто за горсткой людей на повторение продукта было очень полезно для меня в прошлом.
Моя главная подсказка была бы С точки зрения разработчика GUI
, Если Вы имеете в виду с точки зрения удобства использования
Не изменяйте цвета по умолчанию. Это важно для людей, которые являются страдающие дальтонизмом .
Для решения проблемы с JTree (с которым я соглашаюсь) необходимо изучить использование глазурованных списков, если Вы хотите хороший JList и взаимодействие JTable в Вашем приложении: http://publicobject.com/glazedlists/
Вы получаете большую функциональность (поддающиеся сортировке заголовки таблицы, например) с несколькими тонкими настройками к Вашему коду.
Кроме этого, сохраните это простым.
Я не думаю, что возможно, в этом небольшом пространстве, дать подсказки, которые позволили бы разработать хорошие графический интерфейсы пользователя (вопрос является столь же большим как, "как я могу записать хорошие программы?"). Но я могу дать подсказки к некоторым полезным книгам:
Помните, что цель пользователя не в том, чтобы использовать вашу программу. Их цель - нечто другое, а ваша программа - просто инструмент, помогающий им достичь этой цели. Сделайте все возможное, чтобы они были успешны и счастливы.
Дизайн пользовательского интерфейса Джоэла Спольски. Вы можете прочитать это за один день.
Используйте как можно меньше пользовательского интерфейса.
Я думаю, мы забываем, что компьютеры - это информационные машины , то есть они предназначены для работы на нас .
Вы когда-нибудь видели Shazam на iPhone? У него почти одна кнопка. Вы нажимаете на нее, подносите телефон к динамику, воспроизводящему песню, и примерно через 10 секунд он скажет вам, какая песня играет.
Невероятно полезно, практически нет пользовательского интерфейса. Вся тяжелая работа идет снизу.