Как Вы улучшили бы наше сообщение об ошибке Обработчика Необработанных исключений?

В Django 2.1 существует готовое решение: https://docs.djangoproject.com/en/2.1/ref/contrib/admin/#overriding-the-default. -admin-site

from django.contrib import admin

class MyAdminSite(admin.AdminSite):
...

Замена пользовательского сайта администратора теперь выполняется путем добавления собственного AdminConfig в установленные приложения.

from django.contrib.admin.apps import AdminConfig

class MyAdminConfig(AdminConfig):
    default_site = 'myproject.admin.MyAdminSite'


INSTALLED_APPS = [
    ...
    'myproject.apps.MyAdminConfig',  # replaces 'django.contrib.admin'
    ...
]

Обратите внимание на разницу между AdminConfig и SimpleAdminConfig, где последний не срабатывает admin.autodiscover(). В настоящее время я использую это решение в проекте.

5
задан GollyJer 8 June 2009 в 19:16
поделиться

4 ответа

Пользователи ненавидят , когда они пытаются что-то сделать, а вы их прерываете. (Я знаю, что я один из них.) И здесь вы даже не даете им возможности выбрать ответ по умолчанию . Я полностью понимаю почему, но действуйте осторожно. Как можно реже прерывайте ход их мыслей.

(Между прочим, после этого приложение завершает работу или вы восстанавливаетесь и позволяете им продолжать то, что они делали?)

Итак ты' Мы предоставляем пользователю два варианта: «расскажите нам, что вы делали» и «продолжайте» (но с гораздо большим количеством слов, чем на кнопке, даже в Take Two). Вы действительно хотите, чтобы они выбрали «расскажите нам, что вы делали», но, насколько я понимаю, вы реализуете это, открыв веб-браузер. Огромное прерывание. Когда пользователь закончит, он полностью забудет, где остановился. Они также будут ненавидеть вас и не будут давать полезных комментариев. (Черт возьми, к тому времени, когда браузер завершит загрузку, они, вероятно, отвлеклись на другое приложение (или перезапустили ваше приложение) и оставят веб-страницу «на потом», к тому времени они забудут любой полезный контекст .)

Почему бы вместо этого не поместить текстовое поле прямо в диалоговое окно? Возможно, вам потребуется немного больше работы, чтобы сначала подключиться, но я думаю, вы получите лучшую обратную связь.

Я думаю примерно так:


(источник: excastle.com )

  • Извините, любезно предоставлено "Ублюдок Сервер оправданий в стиле «Оператор из ада» . У них есть больше.
  • Начните с курсора в текстовом поле «Расскажите нам, что вы только что делали», так что им легко дать вам обратную связь: просто введите что-то и нажмите Enter (или щелкнув по кнопке, на которой всего три слова.)
  • Сделайте «Завершить сбой уже» гиперссылкой, чтобы она была там, но не выделялась. Выровняйте его по левому краю, чтобы люди не сразу связали его с кнопкой «Отмена», это действительно так.
  • Если кто-то заполнит поле и отправит отчет об ошибке, ваше «привет, спасибо!» диалог мог бы упомянуть "кстати, и покажите снимок экрана с красным кружком и стрелкой, чтобы они могли заметить.
  • Любой другой текст, который вы хотите, можно разместить на боковой панели с другим цветом фона. Слепота в отношении баннерной рекламы не позволит людям даже увидеть ее, если у них нет любопытного (и терпеливого) настроения.
2
ответ дан 15 December 2019 в 06:33
поделиться

Подход, который я использовал, состоит в том, чтобы сделать его настолько простым, как возможно для пользователя. Они уже обеспокоены тем, что вы показываете им пугающее сообщение об ошибке, поэтому вы не хотите создавать дополнительный стресс, допросив их. Попросите краткий комментарий и возьмите столько, сколько сможете, автоматически.

Стоит отметить, что с помощью FogBugz вы можете сохранить сообщение о случае, когда вы его диагностировали. Если та же ошибка повторяется снова, вы можете вернуть это сообщение с сервера для представления пользователям. Я отошел от FogBugz за последние несколько лет, поэтому мои воспоминания о том, как именно это работает, немного нечеткие, но я помню, что имел возможность сохранить сообщение о корректирующих действиях и представить его пользователям, когда это имело смысл.

РЕДАКТИРОВАТЬ : Теперь, когда я увидел изображение, мои комментарии все еще остаются в силе. Упростите и уберите любой страшный язык. Я бы удалил ссылки на «команду разработчиков»; используйте вместо этого «нас». Убрать ссылки на "нормальный английский". Вы хотите задать простые вопросы: «Что вы делали?»

1
ответ дан 15 December 2019 в 06:33
поделиться

У нас есть что-то похожее (не так уж и странно - слава вам), но у нас также есть возможность просматривать исключение (по умолчанию, скрытое от пользователя) для разработчиков, которое может быть устранение неполадок у пользователя или для пользователей, которые обращаются в службу поддержки.

Также вы можете сказать им, что собираетесь отправить парня справа на картинке к их столу, чтобы он помог им, если они не отправят отчет. Это должно их напугать. :)

0
ответ дан 15 December 2019 в 06:33
поделиться

Я не знаю, делаете ли вы это уже за кулисами, но мне нравится подход, когда пользователю просто разрешается ввести свой адрес электронной почты и нажать «Отправить отчет об ошибке».

И затем, когда я получу подробности об ошибке, я изучу проблему, исправлю ее, а затем немедленно отвечу им, сообщая, что проблема решена.

Это делает пару вещей. Это упрощает пользователю отправку ошибки, а также возможность уведомить ее о ее устранении. И он зажигает огонь под моей задницей, чтобы проблемы были решены как можно скорее, поэтому я не получаю тот же отчет об ошибке от десятков пользователей.

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

0
ответ дан 15 December 2019 в 06:33
поделиться
Другие вопросы по тегам:

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