Сообщение об успехе python не печатается

я пытаюсь напечатать сообщение об успехе после операции добавления в моем проекте python django. но сообщение об успехе не печатается. оно печатает None.below мой код. что я делаю неправильно?

def edit_toners_save(request):
if request.method == "POST":
    toner_id = request.POST.get("toner_id")
    toner_model = request.POST.get("toner_model")

    toner_printer_id = request.POST.get("toner_printer")
    toner_printer = Items.objects.get(id=toner_printer_id)

    # issued_to_id = request.POST.get("issued_to")
    # issued_to = Prosecutions.objects.get(id=issued_to_id)

    total_qty = request.POST.get("total_qty")
    Toners_model = Toners(id=toner_id, toner_model=toner_model, toner_printer=toner_printer, total_qty=total_qty)

    Toners_model.save()
    print(messages.success(request, "done"))
    calc_total_qty()
    print(messages.WARNING)
    return redirect('view_toners')
else:
    return redirect('view_toners')[![][1]][1]
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
3
0
55
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

messages.success не возвращается. вы ищете что-то вроде get_messages()
Согласно официальному документу от django в здесь:

    from django.contrib.messages import get_messages
    storage = get_messages(request)

Можете ли вы уточнить вариант использования в моем сценарии.

muneermohd9690 19.03.2022 17:43

ваш print(messages.success(request, "done")) не работает, потому что messages.success вернет только None.

Ivan Kwong 19.03.2022 18:53

так какой должен быть код, если я хочу напечатать сообщение об успехе?

muneermohd9690 19.03.2022 18:57
print(get_messages(request)) после звонка messages.success
Ivan Kwong 19.03.2022 19:13

я получаю напечатанное ниже после добавления кода, как предложено <django.contrib.messages.storage.fallback.FallbackStorage object at 0x0CF4DE20>

muneermohd9690 19.03.2022 19:19

хорошо, позвольте мне спросить вас по-другому. я хочу напечатать сообщение на моей html-странице после операции редактирования. как я могу это сделать. я пробовал печатать сообщения, как показано ниже, используя sweetalert <!--- Сообщения после операций CRUD -- -> {% для сообщения в сообщениях %} {% if message.tags == 'success' %} <script> var m= "{{ message }}; swal("Perfect!", m , "success") < /script> {% endif %} {% endfor %} <!--- Сообщения после CRUD-операций --->

muneermohd9690 19.03.2022 19:21
messages = [m.message for m in get_messages(request)]
Ivan Kwong 19.03.2022 23:25

спасибо. Я нашел решение, объединяющее ваши и некоторые результаты Google.

muneermohd9690 20.03.2022 08:07

Другие вопросы по теме