Используя это обычное выражение в моем файле urls.py, я получаю только последнюю букву в параметре add_or_remove.URL попадает на мой взгляд, но я получаю только d для добавления и e для удаления.Что я делаю не так?
urls.py
d
e
r'(?P<add_or_remove>[add|remove])/'
Спасибо
Это происходит потому, что [...] соответствует любому символу из набора. Просто удалите браслеты (обычно достаточно использовать браслеты из (?P<>...)):
[...]
(?P<>...)
r'(?P<add_or_remove>add|remove)/'
Измените квадратные скобки на круглые () скобки.Теперь он соответствует любому из символов a d d | r e и т. Д. *
()
a
|
r
Признаюсь, я не знаком с Python.Но если вы пытаетесь захватить добавить или удалить , ваш синтаксис неверен.То есть вам не нужны скобки, так как это обозначение для набора символов - совпадающее с любым в наборе.